[gameprogrammer] Re: curves

  • From: Robbert de Groot <zekaric@xxxxxxxx>
  • To: gameprogrammer@xxxxxxxxxxxxx
  • Date: Thu, 29 Jul 2004 12:51:05 -0400 (EDT)

No too difficult to augment the piecewise Catmull Rom to be 0-t over the
whole set of control points.

n = number of control points.
Every point x has a t value of x/(n - 1)

Then given a t for the whole line we can get the t' of the piece that it
falls in on.  Finding that piece is a simple linear search or binary search.

Say if it falls between points a and b.  The entire line t for a is "at" and
t for b is "bt".  Then the piece wise t will be...

t' = (t - at) / (bt - at)

Now it's just the use of the piecewise catmull/bezier formula to get the
actual point.


One thing to note though is that speed along the curve will vary depending
on the control points and tangents defining the curve.  I think you'll get
that with any spline based smoothing though.

> If I use Catmull Rom spline I need a t parameter going 0-1 between every 
> four controll points, so the whole curve is composed of more segments.
> It is important that I should be able to go through the whole curve with 
>    a paramter which is 0 at the start and 1 at the end of the curve 
> because I want to use equal length parts of the curve.
> What I mean:
> If I use the values 0, 0.25, 0.5, 0.75 and 1 of t than I get everytime 
> equal length lines between the different t values. ( 0 and 0.25, 0.25 
> and 0.5, ... )
> 
> Is there a method how I can get control points from Catmull Rom spline 
> for a NURBS?


______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca


---------------------
To unsubscribe go to http://gameprogrammer.com/mailinglist.html


Other related posts: