Tim Nikias wrote:
> Hey Rune! Nice to hear from you! :-)
>
>
>>How about creating a bezier patch for each quad? Then the subdivision
>
> level
>
>>can easily be controlled. And there are macros that take exactly a 2d
>
> array
>
>>of points and create a bezier patch "cloth" from them, automatically
>>creating all but the corner control points in the process (the corner
>
> points
>
>>being the ones that comes from the original 2d array).
>
> SNIP
>
> I thought about that and actually tried that when fiddling with bilinear
> interpolation. I think I could come up with an implementation, shouldn't be
> too difficult: calculate the control-nodes on the edges first and then
> interpolate among the neighbours to get the inner control points (of course
> keeping in mind that neighbouring patches need to have the same angle to the
> edge to keep the edges smooth).
An internal representation where at every node you record the x,y and z
position plus the derivatives in the u and v direction plus the second
derivative in the uv direction (a set that can be used to create a
smooth surface using Hermite polynomials) can uniquely be converted to a
smooth bicubic patch. I only mention this because it might be a more
natural set of parameters to work with during computation.
Post a reply to this message
|