POV-Ray : Newsgroups : povray.general : Wrinkle free 3 point patch -or- Jpatch anticipation : Re: Wrinkle free 3 point patch -or- Jpatch anticipation Server Time
5 Nov 2024 01:23:59 EST (-0500)
  Re: Wrinkle free 3 point patch -or- Jpatch anticipation  
From: sascha
Date: 4 Aug 2003 10:53:08
Message: <3f2e7354$1@news.povray.org>
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

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.