From: Bruce S. <Bru...@nc...> - 2006-01-24 04:27:06
|
It's my fault. I was trying to fix a problem with curve plotting and introduced a different bug, which is sometimes worse than the old bug. The problem I was trying to fix was that when you drew a very long trail following an object you might see a sizable gap between the last point of the curve and the position of the object. This was due to not rendering the last point of a curve when displaying every Nth point (only 1024 points are rendered). Alas there are now cases of which you found one where the cure is worse than the disease. I'll either retreat to the earlier version or do a better algorithm which I've worked out but not coded in C++, which is to not skip a constant N points every time but step N-1, or N, or N+1 along the way to spread out the missing points, and end on the endpoint. Bruce Sherwood Matthew Kohlmyer wrote: > I know that "curve" has a history of behaving strangely when too many > points get appended, but I've encountered a weird behavior I don't > think I've seen before. > > A trail is being appended that tracks a moving object. After a short > time, the trail stops appending, and a straight line segment is drawn > from the last appended point to the current position of the moving > object. This continues for a while, then the curve is suddenly > updated to include all previously undrawn points, and the weird > "connecting line segment" behavior starts again. > > This is hard to describe in words, so I've posted a movie of it. The > movie file is 1.3 MB and is in Windows Media format. Download the > file at: > > http://www4.ncsu.edu/~makohlmy/curve_bug.wmv > > The code that generated this output is attached. Note the behavior > starts after about 1000 iterations. (In this program, deltat is one > day, loop stops after 6 years, behavior starts about halfway in, or > 3*365=1095 iterations.) So I don't think this is a case of too many > locations appended. I've certainly seen past student programs that > have much larger trails than this that display perfectly. > > System specs: > Windows XP SP2 > AMD Athlon 64 3200+, 2.0 GHz, 1.0 GB RAM > Video: GeForce 6200 TurboCache, PCI Express x16, 256 MB > ForceWare version: 81.98 > > Video drivers are up to date. Turning off hardware acceleration does > not fix the problem. > > Any ideas? (Apologies if this has already been reported.) > > > Thanks, > > Matt Kohlmyer > School of Physics > Georgia Institute of Technology > |