SubD Ex;port
 1-20  21-40  41-44

Previous
Next
 From:  ELF
478.21 In reply to 478.20 
Thanks for the info :) Though I kind of understood all of that...
What I kind of didn't get was whether or not you could have points places like thpose in the attachment.

Because if you make a 2-rail sweep, you can have any number of points on each side.. but is that because the 2-rail sweep actually makes an entire grid of patches? Damn I just realised that :S Stupid me...

What I don't get then is why you can't do the same with bezier patches... have 1 side made of 2 points, one parallel maybe of 4 points, and 2 conneting those with sides with 3 and 5 points, and still get the computer to automatically generate a perfect smooth surface...


Oh and BTW... Aren't solids modelers often just NURBS modelers with good trimming? :P Like solidworks, or PowerNURBS/PowerSolid...

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.22 In reply to 478.21 
> What I kind of didn't get was whether or not you could have
> points places like thpose in the attachment.

No, not in a standard NURBS surface. This is the kind of thing that the T-Spline guys are working on as an extended type of NURBS surface, but the classic standard style does not allow for single additional points anywhere in the middle like that, if you want to add a point to a standard NURBS surface you have to add an entire row or column of points.


> Because if you make a 2-rail sweep, you can have any number of
> points on each side.. but is that because the 2-rail sweep actually makes an
> entire grid of patches?

I guess the confusing part here is that there is a point matching and refining process that happens during the 2-rail sweep.

So even though your initial rails of the 2 rail sweep can have any number of points, the resulting surface does not use those control points directly, there is a process where the swept surface is shaped to conform to those curves by an ongoing refinement. On each step of the refinement, there is an entire row of points added to the surface being calculated.

So if you turn on the points of a swept surface, you will see that they are in a grid and that they don't match the original rails for example. For multiple profiles there is a process where all the points of the profiles are merged together so that there is a common number in that direction as well.

So the initial curves with different numbers of points don't just go directly into making up the surface.


> What I don't get then is why you can't do the same with bezier patches... have 1
> side made of 2 points, one parallel maybe of 4 points, and 2 conneting those with
> sides with 3 and 5 points, and still get the computer to automatically generate a
> perfect smooth surface...

Well, the computer has to manipulate something to make a perfectly smooth surface.

If you have a bezier surface made up of just 2 points for example, that is limited in the type of shapes it can make, you can make a plane with it or a kind of limited curve if the points are not on the same plane, but there are not enough points available in a 2-point structure to adjust it to make it connect up smoothly to something that is wiggling around a lot.

It's like saying you should be able to take a 2-point line segment in the middle of something and make it smooth by changing the points. But you can only connect 2 points in a straight line, you can't make 2 points form a smooth curve.

It is possible to make Beziers have more points to give the computer something to edit to manipulate the shape. But this tends to be clumsy because it means you have to lock down the location of a whole bunch of points to make them smooth with the adjacent patch. Pretty soon you can only make clumsy edits because most of the points are locked down to provide smoothness.


> Oh and BTW... Aren't solids modelers often just NURBS modelers with good trimming?
> :P Like solidworks, or PowerNURBS/PowerSolid...

Yes, 99% of "solids" modelers are NURBS based, with trimmed NURBS surfaces and "B-Reps" (Boundary-representation) which is the name for trimmed surfaces + the ability to have shared edges beween surfaces.

But a lot of solids modelers tend to incorporate other layers of mechanisms in them such as constraint-based solvers where you can tag certain dimensions to be rigid and have it calculate other dimensions for you, and many of them sort of present a particular style of user interface for how you interact with objects. By this I mean they don't tend to give you access to stuff like the individual control points on the NURBS surfaces even though they are using those behind the scenes.

So there tends to be a package of additional mechanisms and certain types of workflow associated with the "solids" modelers.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ELF
478.23 In reply to 478.22 
Ah damn, I don't get it :S I don't get why you can't 2-rail sweep-generate a bezier controlled patch surface... in all it's simplicity, is it because the points are too complex? B-splines are only defined by a point in space, while beziers are 4 vectors in space, right?

I'm sorry, I just didn't understand anything of what you wrote :S
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.24 In reply to 478.23 
> Ah damn, I don't get it :S I don't get why you can't 2-rail sweep-generate a
> bezier controlled patch surface...

It's just more difficult to create longer surfaces out of Beziers because each individual Bezier is limited in the number of points it can have in it, so you would have to use a bunch of them stuck together, with the points carefully arranged to try and make them smooth.

NURBS was basically invented to solve this problem, it is a way to have a longer string of points than a bezier can have in it.


> B-splines are only defined by a point in space, while beziers are 4 vectors in space, right?

No, Beziers are also defined by points in space. Sometimes they may be displayed with stuff that looks like vectors but those are just lines connecting between the points.

A Bezier surface looks the same as a NURBS surface, it is a rectangular grid of points just like a NURBS surface.

But a bezier can only have as many points as its "Degree" + 1. The "Degree" is one part of the definition of a NURBS or Bezier, it defines the highest exponent of the math function used for the blending calculations.

So a degree 3 bezier curve is made up of 4 points. You can only make so many shapes with 4 points, to make more intricate shapes you need to use more points, which for beziers means trying to stick together a bunch of separate beziers.

NURBS allows for more points, if you have a NURBS curve of degree 3, it can have a minimum of 4 points (which makes it equivalent to a bezier), but it can have any number more than that. The NURBS blending method makes it easier to get a smooth result curve from a longer chain of points, it is built in to the smoothing formula, instead of being something that you have to do manually by arranging points which you have to do if you stick small bezier curves next to one another.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ELF
478.25 In reply to 478.24 
Hmm, I THINK I got it now...

What do you mean with an individual bezier? a bezier point? patch?

Damn this is hard to grasp :S I might have more questions for your reply later...
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.26 In reply to 478.25 
> What do you mean with an individual bezier? a bezier point? patch?

I meant patch. Or curve if I was talking about curves instead of surfaces.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ELF
478.27 In reply to 478.24 

Ah crap, I still don't get it :S

So you say a NURBS patch is limited to 4 sides... well so is a NURBS patch, right?
I don't quite understand this bezier limitation... can't you have any number of patches in a grid with both NURBS and bezier?

You usually stick beziers together in groups of... 4? or 2? (maybe just 1?) Representing a cross-section in a grid. each of these consist of 3x4 points (one for corner position, and 2 for defining curvature), these are treated as 1 point with 4 "arms" in for example 3ds max.

3ds max usually locks the arms 2 by 2, Like this:
The normal represented by one arm is continued over in the superjacent arm so if you draw a line between the 2 points it will go through the middle "position" point.
So you're sure you'll have at least 2G (?) continuity.
So you might in reality have several points, but in practice you only have 1 point with 2 "vectors" (1 vector defining length from and angle/normal to middle point, for each two superjacent points).
I don't get why these points couldn't be interpolated in a sweep just like the b-spline points in a NURBS swept surface...

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.28 In reply to 478.27 
> So you say a NURBS patch is limited to 4 sides... well so is a NURBS patch, right?

Both Beziers and NURBS have a rectangular type 4-sided grid, yes.


> I don't quite understand this bezier limitation... can't you have any number
> of patches in a grid with both NURBS and bezier?

Sure, you can stick together a bunch of little surfaces with either method.

But with Beziers you are forced to stick together a bunch of little separate surfaces. With NURBS you have an alternative - you don't have to stick together a whole bunch of different NURBS surfaces, you can have one single NURBS surface that is longer.

For instance the result of a sweep is just one single NURBS surface, not a whole bunch of little NURBS surfaces arranged together. With Beziers you are forced to do the "whole bunch arranged next to each other" method.


> each of these consist of 3x4 points (one for corner position, and 2 for defining curvature)

Those 2 inside points immediately define the tangent direction only, not the curvature.


> So you're sure you'll have at least 2G (?) continuity.

Nope - in fact that is the big problem you are only guaranteed to have G1 / Tangent continuity with this method of bezier arrangement, unless you do another further lockdown of making the points on either side equal distances from the corner point.

On the other hand a NURBS surface made up of a longer number of points in one single surface is able to have G2 curvature continuity throughout the entire surface, without doing any kind of special "lockdowns" or spacing restrictions on the points that you can move around.

The typical "chain of beziers" mechanism results in shared tangents only between each piece, usually these chains have breaks in curvature between each bezier piece. That's one reason why MoI doesn't use the 2D illustrator style bezier curve drawing, because it does not generate a G2 result curve.


> I don't get why these points couldn't be interpolated in a sweep just like the
> b-spline points in a NURBS swept surface...

Well you could do it. But it is not commonly done since there are all these kinds of restrictions on how the resulting points have to be arranged. If you pull on one point in the resulting Bezier patchwork, a bunch of other points nearby have to be moved along with it and re-arranged. This is just clumsy in general from several viewpoints, both from code implementation as well as user interface.

NURBS solves this problem by making it possible to have a surface with more than 4 points in it without requiring a bunch of point restrictions and point "lockdowns".

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ELF
478.29 In reply to 478.28 
Ah nice :)

Thankyou really much for all the info, it's been really informative.

Hmmm, now to learn the math behind sweeping, and then coding a script for 3ds max so I can do it with polies :P Shouldn't really be that different from NURBS' way of doing it, right?

And then I'll just have to wait for npower software to implement the Sub-D -> NURBS feature I suggested that they seamed to like very much, and then I'll have perfect NURBS/Sub-D collaboration within max!! Though I'll most likely still be doing my NURBS stuff in MoI... I just hope I can afford a license when it comes to that :S
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  RealUnreal
478.30 In reply to 478.29 
ELF:
Well, you better don't wait for Npower to implement SUB-D into PowerNurbs because i already suggested that a long time ago for Version 2.0 in 2005 http://npowersoftware.com/forums/showthread.php?t=425 and although they liked very much the idea - they didn't intergrated it! Then again the same discussion about Sub-D came almost a year later in this thread http://npowersoftware.com/forums/showthread.php?t=580, and again it just seems they liked the idea but don't want to implement it...

So again ELF, i don't think they will implement it, they just always say it is a great idea... But who knows, maybe they will realize this time, what possibilitys that would open - for us and for them!

Michael:
Wouldn't that be a option for MOI?? A SubD-Nurbs Hybrid? With the best of both Worlds? Like they did in Catia?

For Inspiration please visit http://www.3ds.com/news-events/spotlights/catia-for-style/overview/ for a little overview Video and then the actually presentation site with modeling example videos http://www.3ds.com/flashgallery/imagine-and-shape-v5r17/

Do you think it would be hard to implement?

I really wish somebody would make it possible for us...

FP
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ELF
478.31 In reply to 478.30 
I think it might be a bit too much for Michael to do for V1... or V2 for that matter :S

Lets just hope it's pushed through... with several demands... or that someone beats them to it...

I bet there's a whitepaper or some other research out there on a good technique for solving the problems Michal and I discussed in the last few posts... a stand-alone plugin for 3ds max would really be nice...

Michael:

I gotta ask.. as far as I understand you're quite the guru when it comes to NURBS programming. Could you give me a hint where I might find some info on coding such a poly sweep function? Sweep and nice booleans are the only 2 things I feel poly modelling (in max at least) lacks to be perfect.

I understand if you won't help though. I kind of feel I'm saying "Hey, won't you tell me how I can make a solution so I can make what I want without buying the software you put so much work into".. But I hope you understand that I will still be quite the NURBS fan, especially with the simplicity of MoI...
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.32 In reply to 478.30 
> Michael:
> Wouldn't that be a option for MOI?? A SubD-Nurbs Hybrid? With the best
> of both Worlds? Like they did in Catia?

Well, notice that one of the things that Catia did is they have a separate modeling module for doing the SubD sculpting portion, then they enabled importing that as NURBS geometry into the other regular modeling modules.


> Do you think it would be hard to implement?

It's pretty hard.

Actually the most difficult problem is that the tools and workflow that you use for SubD modeling is pretty different from regular NURBS drawing/construction type tools. It will be very challenging to combine all those tools into one single interface without it being a big complex mess.

That's actually probably the single largest problem - Catia seems to have side-stepped this by having their Sub-D modeler set up as a separate application instead of having all functions directly combined into one app. Also some fancy tools like Catia don't really mind as much about having a complex UI as I do.

It won't be easy for me to undertake this huge of a UI design anytime too soon. I'd say that it would be quite a few years away at a minimum.

As far as the geometry goes, that is also not a completely simple thing to do, that will take some finesse work as well, but I think that eventually there would be more geometry library support for this type of stuff as it becomes increasingly common.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.33 In reply to 478.31 
> I think it might be a bit too much for Michael to do for V1... or V2 for that matter :S

:) I can definitely say that it's too much for V2 as well. There is still a lot of ground to cover for non-Sub-D NURBS modeling.

It will be quite a ways out before it will be possible for me to work on this type of hybrid functionality for MoI.


> Could you give me a hint where I might find some info on coding
> such a poly sweep function?

Well, some older names for 2-rail sweeping is "birail", so you might do some searching using that term.

"The NURBS Book", by Les Piegl and Wayne Tiller have a section on one-rail sweeping. They give a couple of references:

Sweep surfaces modelling via coordinate transformations and blending : http://portal.acm.org/citation.cfm?id=87207

V Akman, A Arslan, Sweeping with all graphical ingredients in a topological picturebook, Computers & Graphics 16(3): 273-281 (Fall 1992) [WOS]

Try searching scholar.google.com and ACM for papers about "sweeping".


I think the Hexagon modeler implements these kinds of features for polygon modeling, so you might look over there to see what they have done.

Are you expecting to do this sweep function on polygon line segments, or on curves? Doing it on polygon line segments will probably introduce a lot of different issues because one part of the sweeping function is usually a recursive adaptive fit to the rails, where you start with a coarser version of the sweep and continue to add in points to refine it until it hugs the shape of the rail curves to an acceptable degree. If you want to match polyline rails, it would probably be expected that you would use only those existing segments for your rail curves instead of refitting completely new ones. That introduces a kind of different complication to the whole thing.

In general one of the parts that you will have to solve at first is how to synchronize the point structures of the curves involved.

Sorry I won't able to really help you with this, I just don't have the time available for that type of a thing.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Joe (INNERACTIVE)
478.34 In reply to 478.30 
I was really impressed by the Catia demo. I think it follows the standard sculpting workflow of most SubD apps, but includes better tools for manipulating hi-res hard surface objects. Most SubD sculpting apps coming out now focus primarily on brush tools. I would like to see if Catia can handle complex boolean operations like PowerNURBS's Detailer can. On their Phone modeling tutorial they literally boolean text into surfaces, which is something I would never try with SubDs.

But like I said, Catia seems to be based on a sculpting worklow and I think MoI is attempting to create a drawing based modeling workflow; much like SketchUp has done.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
478.35 

I don't see the word "Nurbs" in the Catia-Inshape Poduct overview?
just"subdivision surfaces"
Are they integrated?
http://www.3ds.com/products-solutions/plm-solutions/catia/all-products/domain/Shape_Design_Styling/product/IMA/

and that cost something like 20 000 $ (?) :)

---
Pilou
Is beautiful that please without concept!
My Gallery

EDITED: 22 Mar 2007 by PILOU

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Joe (INNERACTIVE)
478.36 In reply to 478.35 
I looked into it a little just now and it seems the SubD aspect is a seperate modeling toolset from the NURBS modeling tools. I didn't see anything showing how they integrate to form a hybrid SubD/NURBS Modeling toolset beyond what most DCC apps provide, which are seperate Poly/SubD/Spline/NURBS toolsets. I saw great tools for modeling hard surfaces using the SubD modeler, but not much on how it handles booleans and trimming, the stuff that makes NURBS stand out to me. The closest thing I have been able to find to a hybrid SubD/NURBS tool is Maya, only because it can convert back and forth between the different surfaces well.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.37 In reply to 478.35 
> I don't see the word "Nurbs" in the Catia-Inshape Poduct overview?
> just"subdivision surfaces"
> Are they integrated?

Well, it is a bit subtle but one part mentions: "Moreover, this technology enables the creation of surfaces compliant with any CATIA V5 applications."

That means NURBS because the other Catia applications are NURBS based.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
478.38 In reply to 478.34 
> But like I said, Catia seems to be based on a sculpting worklow and
> I think MoI is attempting to create a drawing based modeling workflow;
> much like SketchUp has done.

Hi Joe, yes this is exactly correct.

And there is still a lot more stuff that I would like to accomplish within the "drawing-type" workflow first before really attempting to do more "sculpting-type" stuff.

I'm not sure how well it will work to try and merge both types into a single app. It is something that I am interested in experimenting with maybe a few years down the road.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Joe (INNERACTIVE)
478.39 In reply to 478.38 
Well that will be a great day for modelers I'm sure! I know that the drawing-style workflow is only now starting to "click" for me, and now that I have seen the light I'm really excited about working with MoI. I was surprised at how quickly I was able to put together the sword concept I posted tonight. Sketchers and vector artists are going to love this app if they give it a chance.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ELF
478.40 In reply to 478.33 
That's ok, you gave me exactly what i needed :)

I will be using max's bezier curves. There are already a number of scripts for reconstructing a spline with a chosen number of points, so "syncing" the used splines shouldn't be the problem... more the interpolation of vertex positions inbetween... not exactly sure how this is done math-wise though. That's why I needed some references.
I think I'm gonna code some modules. one for syncing up the splines outputting a number of values for the position of each start/end-point, one for making a poly plane and making it editable on a sub-object level, and one for placing the outer vertices on the positions found in the first module, and then interpolating the rest into position. Two of those are a breeze (theoretically) the last one though... :S
Closed spline sweeping will come later :P
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
Show messages:  1-20  21-40  41-44