[Bf-committers] Surface and Volume modeling with new developed Bezier-Surface math

Roland Adorni rol at solnet.ch
Sun Sep 22 18:01:12 CEST 2013


You have as much handles as your vertices has neighbors.

if your vertices has 7 neighbors then you will have 7 handles on that 
vertices for each edge going to a neighbor vertices one.
Each handle is a handle for the edge.
You have the  bezier-path on the edges. The surface faces is a logical 
fill in of the beziers paths on it's edges.

The limit aren't the vertices or the edges but the faces.the formula 
only works for triangle and quad faces. But I think that's not  such a 
big limit.

To keep the surface smooth the handles on one vertices have to be bound 
on a plane. The tangential plane. Pretty much the same like in 2D where 
you bind the 2 handles into a line building a tangent and get a smooth 
bend over the vetrices this way. In the surface/volume case you bind 
them to a  tangential plane to have it smooth and to simplify the 
editing. you can rotate the plane and you can pull on it's handles.

The whole thing is not about auto-subdivision I more think about 
modelling like you do now with vertices, edges and faces just with the 
difference that the faces could be those bezier surface and you have a 
handle-plane. So you will need a lot less points and  faces to create a 
perfect and nice curved objects.

I don't know if this all really works as I tell you here. I think it 
does judge by the math but I haven't checked it out completely that it 
will really hold what I say it will. It's not a finished development.

However that's the way I would like to do 3D modeling (with point's and 
handles) since honestly with all the currently available tools in 
blender or other such tools I still have a hard time to create something 
like a human body or head or face in a good and fast way.

I believe best is if I creating a web page on my homepage and put the 
info up there so I can create pictures and present the math and such and 
post the link here.

Then you can check if it's something useful for blender or not and use 
it or not as you like.

However it might take a bit of time.

greetings
rad



On 21.09.2013 22:09, Brecht Van Lommel wrote:
> In your example it seems you have 6 regular vertices with nice
> matching handles, but if you want to do more complex shapes, things
> aren't so simple anymore. If a vertex doesn't have 4 neighbours, what
> happens then? The tricky thing is extending such a method to arbitrary
> topology, while still keeping the surface smooth.
>
> Subdivision surfaces are the most popular extension that support
> arbitrary topology, they don't have handles but can support creases.
> T-splines are an interesting extension of NURBS to less restricted
> topology, with handles, but don't support triangles I think (and
> T-splines are patented). There exist Gregory patches though they
> aren't as smooth. If you look for research papers about these things
> you will find various methods with different properties and
> trade-offs.
>
> On Sat, Sep 21, 2013 at 5:48 PM, Roland Adorni<rol at solnet.ch>  wrote:
>    
>> Hello and thank you for your answer
>>
>> I wonder if I can post pictures?
>>
>> Let's try this:
>>    Imagine 3 Bezier Circles like you can generate them in Blender in 3D
>> mode seen in edit mode.
>> One horziontal one vertical (90deg rotated in X)  one vertical (90deg
>> rotated in Y).
>>
>> Now let's see/convert it into a Bezier Sphere-Volume.
>> You have 6 crossing points of the circles. This will be the 6 bezier
>> points of the volume
>> At each of those crossing points you have 4 handles/legs 2 from each of
>> the crossing circles.
>> The Bezier-Sphere-Volume will have the same 4 handles/legs.
>>
>> Now how to deform/shape that volume?
>> You pull at those points or you pull at the handles/legs or change their
>> direction same as you do for the Bezier Path..be it 2D or 3D.
>>
>> You can manipulate the Bezier volume the same way as you modify the
>> bezier path.
>>
>> That's a bit the idea I have in mind. I want the surface have to go
>> through the points I modify rather than haveing an enclosing grid like
>> with NURMBS. And I like the handles.
>>
>> As you know the Bezier point and handle system is a very mighty way to
>> create accurate curved paths. (accurate in the sense that it will fit
>> easy and fast what you really like to have)
>>
>> So If I can design a volume/surface the same way just with extrema
>> points and tangent handles to it (transforms in something like a
>> tangential- plane -handle in the surface/volume case)
>> then I believe it is simpler for not so talented people like me to
>> create (accurate) curved 3D volumes in a very fast and easy way.
>>
>> The idea about Bezier -Volume is to have them constructed out of bezier
>> -triangles or the 4 corner surface (forgot the name) whereas the
>> triangle is the more accurate solution.
>>
>> So I think instead creating a complex curved volume out of normal
>> triangles you could do the same with a few bezier-points/triangles or faces.
>>
>> Sorry if I am a bit raw worded in the description I don't know all the
>> words.
>>
>> So the math is a formula like you know it from the bezier 2D or 3D path
>> not so much more complicated.
>>
>> It's just an enhanced formula to make what I describe above possible.
>>
>> I don't know if my Bezier-surface/volume modeling idea /formula is
>> useful to you. It's just my idea how curved 3D modeling could be done
>> better.
>>
>> The math/formula is the least work of course. I have it and you can have
>> it if you are interested to try out something in that direction.
>>
>> greetings
>> rad
>>
>>
>>
>> On 21.09.2013 02:31, Brecht Van Lommel wrote:
>>      
>>> Hi Roland,
>>>
>>> There's are various known methods to extend 2D curves to 3D surfaces,
>>> like NURBS, Catmull-Clark, Loop subdivision surfaces or T-Splines. I
>>> can't tell from the description, but maybe you derived a similar
>>> algorithm independently? For some new surface representation to be
>>> added to Blender I guess it would need to have compelling properties
>>> that existing algorithms don't have.
>>>
>>> Brecht.
>>>
>>>
>>> On Fri, Sep 20, 2013 at 9:04 PM, Roland Adorni<rol at solnet.ch>   wrote:
>>>
>>>        
>>>> Dear Blender-Developer-Community
>>>>
>>>> I am not sure who I have to contact with this but I found this mailing
>>>> list in your contact page and so I registered and post it here.
>>>>
>>>> I am not the most skilled 3D modeler and so I often wondered how 3D
>>>> volume modeling could be done better.
>>>> I figured out that I can very well shape 2D objects with the Bezier
>>>> curves and wondered how they can be enhanced to model surfaces and volume.
>>>>
>>>> So I took a look at the math and did some first calculations and tests
>>>> with octave (matlab clone)  and wxMaxima (mathematica clone) and the
>>>> first results look promising to me.
>>>>
>>>> Different to the known Bezier surface you can find in the wiki the
>>>> surface in my approach will not use a grid. It's defined by the corner
>>>> points and legs like we have it in the 2D case.
>>>>
>>>> With it it's possible forexample to create a sphere out of 6 such
>>>> points. (same leg length value as you have it in the 2D case)
>>>> ->   The 4 points as you have it in your 2D-Bezier circle and an
>>>> additional point on x (0,0,1) and one on (0.0,-1) building 8
>>>> Bezier-surface triangles.
>>>>
>>>> In basics the Bezier surface I calculate is a bit a more natural
>>>> enhancement of the 2D Bezier curve reduced to the really required points
>>>> only. The math behind it is not too complicated and should be well
>>>> implementable.
>>>>
>>>> Let me know who to contact if you have interest.
>>>>
>>>> best regards
>>>> rad
>>>>
>>>>
>>>> _______________________________________________
>>>> Bf-committers mailing list
>>>> Bf-committers at blender.org
>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>
>>>>          
>>> _______________________________________________
>>> Bf-committers mailing list
>>> Bf-committers at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>
>>>
>>>        
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>      
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
>    



More information about the Bf-committers mailing list