From: SourceForge.net <no...@so...> - 2012-04-17 17:49:31
|
Bugs item #1827966, was opened at 2007-11-07 15:33 Message generated for change (Settings changed) made by genete You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=757416&aid=1827966&group_id=144022 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Usability Group: SVN version >Status: Closed >Resolution: Works For Me Priority: 5 Private: No Submitted By: Genete (genete) Assigned to: Nobody/Anonymous (nobody) Summary: Angles are recalculated to 360 mod Initial Comment: Using svn 1114 Angles that are rounded to 360 module when creating the waypoints. For example if you set the following values in animation mode to an angle parameter: frame :: value 0f :: 0.0 DEG 5s :: 1799 DEG then you get: 0f :: 0.0 DEG 4s23f :: -0.99 DEG 5s :: 1799 DEG (this is -1.00 DEG when rounded to 360 DEG) You get an smooth angle but a break in the graph. Also you don't get the number of turns you wanted to achieve when inserted a high angle value. 1799 DEG is almost 5 turns. ---------------------------------------------------------------------- Comment By: Konstantin Dmitriev (zelgadis_ksee) Date: 2008-04-10 21:56 Message: Logged In: YES user_id=1438889 Originator: NO > So pick up a > tangent duck at 30 degrees, turn it through exactly 360 degrees and drop it > where you picked it up from and its new angle should be 390 degrees, not 30 > as it currently is. That behaviour will be appropriate IMHO. ---------------------------------------------------------------------- Comment By: dooglus (dooglus) Date: 2007-11-08 15:02 Message: Logged In: YES user_id=1546005 Originator: NO > 3s :: 100 DEG > 6s :: -100 DEG > you obtain 100, 110, 120, ... 220, 230, 240, 250, -100. this is because the shortest way from 100 to -100 is by going through 200. Going the other way (100,0,-100) is a turn of 200 degrees, but going this way (100, 200, 260) is only 160 degrees. I think that's the way it's working - taking the shortest route, and treating all x+y*360 angles as x+0 for all y. ---------------------------------------------------------------------- Comment By: dooglus (dooglus) Date: 2007-11-08 14:59 Message: Logged In: YES user_id=1546005 Originator: NO After further discussion, it looks like a good solution would be to store angles as numbers just like reals, without wrapping mod 360. When manipulating a tangent using its duck, for instance, the duck should keep a track of how many rotations the tangent has gone through. So pick up a tangent duck at 30 degrees, turn it through exactly 360 degrees and drop it where you picked it up from and its new angle should be 390 degrees, not 30 as it currently is. ---------------------------------------------------------------------- Comment By: Genete (genete) Date: 2007-11-07 15:43 Message: Logged In: YES user_id=1874777 Originator: YES This cause also that you obtain strange movements when inserting values that are +/- value: frame :: value 0f :: 0 DEG 3s :: 100 DEG 6s :: -100 DEG you obtain 0f :: 0 DEG 3s :: 100 DEG 5s23f :: 257.74 DEG (what is near to 360 DEG - 100 DEG = 260 DEG) 6s :: -100 DEG So when you expect that the angle do 0, 10, 20, ... 90, 100, 90, 80, ... 10, 0, -10, ... -80, -90, -100 you obtain 0, 10, 20, ... 90, 100, 110, 120, ... 220, 230, 240, 250, -100. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=757416&aid=1827966&group_id=144022 |