|
|
Breton Slivka wrote:
> what remains is the problem of continuity with adjacent patches, due
to the
> fact that each edge now has 7 points, which must seamlessly connect
with a
> patch with 4 control points, and also, the center control point on each
> edge must lie on the same line as its surrounding two edge points. I
wonder
> if this is mathematical conflict, or if it can be solved.
That's easy, the only thing you need is the so called de Casteljau
algorithm (e.g. http://users3.ev1.net/~charlesliu/graphics/bez/alg.html )
I will prepare some screenshots that show how I subdivided the
five-point-patch and where the problems are.
-sascha
> sascha <sas### [at] userssourceforgenet> wrote in
> news:3f2773bf@news.povray.org:
>
> I've been playing around with bezier curves and math, and after some
> thinking, I think I may have found a solution.
>
> However it seems kind of obvious so I wonder if I'm missing something.
>
> Understanding that C1 continuity is defined that 3 control points, that is
> the two curve control points, and the two connecting points (one point)
> they surround, must all lie on the same tangent line.
>
> Applying this to the 5 point patch structure (contructed of 4 point
> patches) I came across these findings:
>
> #1. The center point, and the 10 control points that immediately surround
> it, must all lie on the same plane, due to the fact that under the
> constraint mentioned above, their positions all become interdependant.
>
> #2. the center point must lie on the intersection of lines drawn between
> its 10 surrounding points. Consequently, lines drawn between these 10
> surrounding control points must all intersect at a single point.
>
> For the bezier lines eminating from the center point you said you were
> having trouble with, this takes care of 2 control points on each.
>
> The rest of the relationships are difficult to explain verbally, so I shall
> give you a diagram I made, where green lines are drawn between points that
> must lie on the same line for continuity.
>
> http://zenpsycho.com/images/pentdiag.gif
>
>
>
> what remains is the problem of continuity with adjacent patches, due to the
> fact that each edge now has 7 points, which must seamlessly connect with a
> patch with 4 control points, and also, the center control point on each
> edge must lie on the same line as its surrounding two edge points. I wonder
> if this is mathematical conflict, or if it can be solved.
>
>
> If I'm incorrect about any of this, let me know, I love learning about this
> stuff.
>
> Thanks
>
>
>
>
>
>
>>Let's use the five-point patch as an exaple. I'd like to subdivid it
>>in a way where a center (of the patch) connects to the center of each
>>edge-curve-segment - this way I'll get 5 4-sided patches (see the
>>paper by Martin Hash I mentioned in my previous porting for a
>>diagram).
>>
>>Subdividing the edge-bezier-curves is a simple de Casteljau operation
>>- I've had some problems with finding the patch center, put the paper
>>posted by Rune has the solution for that (at least I think so). The
>>only problem that needs to be solved is finding the control-points for
>>the 5 new curves that origin from the center. And - all in all - I'm
>>not sure that those five new patches will connect 100 percent
>>smoothly.
>>
>>All I can do is playing around with patches by trail and error, but it
>>would be better to have a sort of a mathematical proove, but that's
>>beyond my means...
>>
>>-sascha
>>
>
>
Post a reply to this message
|
|