ON_Circle vs 'revolve'

I’ve referenced the following image once in a while, over the years, when helping a colleague bear with the understandings of Rhino’s nature, throughout our journeys together.

I forget where I came across this image, I think maybe in my Grasshopper research. :face_holding_back_tears:

Our question today is relative to ‘revolve’ accuracy in comparison to regular “ON_Circle”.

My colleague is believing that they’re getting poor accuracy of ‘roundness’ when they use ‘revolve’.

I’m mostly researching further understandings here.

I’m trying to have them check:
Deformable=Yes

Please lemme know of any links or threads I’m missing. Cheers. :hot_beverage:

So, If it’s “impossible for a nurbs curve to manifest […] perfect circle” , then how does a ‘circle’ compare to a ‘revolve’? :melting_face:

just revolve a straight line, use option deformable for a nurbs surface otherwise you will have an exact circle. yes nurbs only approximate geometry like circles, but when you increase the points the tolerance will be so low that you will not have any issues regarding what you are aiming for.

Possibly this is helpful?

A degree 5 circle (8 CVs, 8 spans) is what you usually use in surface modelling.

Otherwise, you can always buy this book ; )

:smiley: lol that book looks awesome.

Yes, thanks for the link. That thread blew my mind earlier :sweat_smile: I need to study it more for sure!

My understanding is Revolve with Deform=No uses the same standard form of rational degree 2 NURBS equations in the circumfential direction as Rhino uses for circles and arcs.

The standard rational (weighted) degree 2 NURBS algebraic equations for circles and arcs are exact. Because these equations have non-rational coefficients when evaluating the equations there is always some round-off error due to use of a finite number of digits. Rhino uses double precison floating point math, which means the accurcy of a 100 mm radius circle will be better than 0.00000000001 mm or 0.00001 nanometer or 1/1,000,000,000,000 of the wavelength of visible light. I consider that level of accuracy to be essentially exact for any purpose. Other forms of exact equations for circles such as the basic x^2 + y^2 = r^2 have similar levels of accuracy when evaluated using standard double precision floating point math.

In contrast the non-rational NURBS algebraic equations for circles and arcs are always approximate. Using 8 control points with a degree 5 non-rational NURBS equation the deviation is around 200,000 times larger than that of the exact degree 2 rational equation. A 100 mm radius circle will have an accuracy of apprroximately 0.002 mm or 2000 nanometers, or a bit larger than the wavelength of visible light. That level of accuracy is sufficient for many purposes and the use of a non-rational NURBS representation may be preferable.