|
![](/i/fill.gif) |
James Tonkin wrote:
> In article <3b17c237@news.povray.org>, Warp <war### [at] tag povray org> wrote:
>
>>Ron Parker <ron### [at] povray org> wrote:
>>: Not really. Bezier patches/bicubic patches are neither non-uniform nor
>>: rational.
>>
>
> Ok, there's about 4 types of curves being discussed here, from (mathematically)
> simplest to most complex, they are:
>
> Bezier curves
> Bicubic patches
> B-Splines (uniform, non-rational)
> NURBS (which stands for non-uniform, rational, b-spline)
>
> All of them are based on the idea of a set of control points, and a set of
> blending functions.
>
> Starting in 2 dimensions, with Bezier curves:
>
> A curve can be defined in terms of a single parameter, (typically 's' or 't'
> are used, depending on your mathematical background) which represents the
> normalized distance along the curve, from it's starting point (control point 0)
> towards it's ending point (for a Bezier curve, this is control point 3,
> although the algorithim could be generalized to any number of points). By
> 'normalized distance' I mean that the parameter (I'll use 't') is 0 at the
> starting point, and 1 and the ending point.
>
> Each control point will have an x and y co-ordinate (<x0,y0> to <x3,y3>), and
> an associated blending function.
>
> For Bezier curves, the blending functions are just the standard expansion
> of ( t * (1-t) ) ^3, seperated according to the power of the 't' term.
>
> (Historically, I don't think this was the motivation for development of
> this set of blending functions, but this is how it works out)
>
> So blending function 3 is t^3.
> b.f. 2 = 3 * (t ^2)*(1-t)
> b.f. 1 = 3 * t * ( (1-t)^2)
> b.f. 0 = (1-t)^3
>
Could you please tell me what separation of a formule is? i.e., how do
you get the blending functions from ( t*(1-t))^3?
Thanks in advance,
Remco Poelstra
Post a reply to this message
|
![](/i/fill.gif) |