Refit or rebuild surface - what is a difference


#1

Hello.

I’m trying to understand difference between RefitSurface and RebuildSurface.
With a given surface created with tolerance 0.001 (U=26 points, V=34 points) I did:

  • Refit to tolerace 0.01 and I got U=13, V=18
  • Rebuild - tried different combinations U (up to 15points) and V (up to 20 points) and always difference was > 0.02
    Could any good man explain a basic different between both method of smoothing/simplifing surfaces?

Thank you,
Codi.


(Michael Pryor) #2

Rebuild Makes a new surface by user defined point count and degree which often changes the shape. Fit makes a new surface based on an existing by trying to simplify / balance control points to the curvature but not change the shape (new point count is determined by the algorithm).

http://docs.mcneel.com/rhino/5/help/en-us/commands/fitsrf.htm

http://docs.mcneel.com/rhino/5/help/en-us/commands/rebuild.htm


#3

Yes, I read it :sunglasses:
It sounds like Fit is doing better job if simplifying/smoothing is needed.
What would be the benefit of using Rebuild? Optical interpretation of changes or …?


#4

FitSrf can change the shape slightly, the deviation is supposed to stay within the tolerance specified in the command. With FitSrf, it is the algorithm that will determine the new number and placement of control points.

–Mitch


(Michael Pryor) #5

Rebuild is good to simplify a surface shape, remove sharp or dense parts of surface, or for making surfaces compatible (like for tweening) in control point count.

Fit is good when you really like the surface you have and don’t want its shape to change (to some tolerance of course)


(Michael Pryor) #6

What I meant was trying* not to change the shape. :smiley:


(Pascal Golay) #7

Hi Codi - Refitting does a nicer job of being accurate - it may add more control points in area of rapid curvature change and fewer in straight areas for example - Rebuild cannot do that, it makes evenly spaced points. So rebuilding and staying within some tolerance of the input may result in more control points than you like.

On the other hand refitting does not necessarily make for a nice structure - knots may not be uniform, and two or more curves refit to the same tolerance will be unlikely to have matching structures - so refit curves and surfaces are less clean, so to speak than rebuilt ones, which always have uniform knots and can be made to match one another by putting in the same settings.

In short Rebuild is based on structure, you might say, and you get the accuracy you get; refit is based on tolerance, you get the structure you get…

-Pascal


(Michael Pryor) #8

Since we are in the topic. Isn’t the description of fit a little deceiving (it was confusing to me when I first learned rhino)?

http://docs.mcneel.com/rhino/5/help/en-us/commands/fitsrf.htm

“The FitSrf command tries to reduce the number of surface control points while maintaining the surface’s same general shape.”

In my experience it usually increases the count. Especially if used in a surface made with a little amount of control points but large curvature as you said fit gets dense at curvature. I think your description here makes more sense for command description.

FitCrv seems to have a more suitable description:
http://docs.mcneel.com/rhino/5/help/en-us/commands/fitcrv.htm


#9

I think, this is an essence I was trying to figure out.

Thank you,
Codi.