|
How
Accurate is Rhino ?
Since
many free-form modelers are not accurate enough for manufacturing
or engineering analysis, and since Rhino is a free-form modeler,
many people assume Rhino is not accurate enough for their application.
In fact, Rhino is just as or even more precise than most CAD software.
Here
are the details:
There
are two common methods 3-D models are stored in computers.
The
first method is using meshes (sometimes called facets), which
are usually used for rendering, animation, or conceptual design.
While mesh modelers often have what appear to be precise techniques
for creating models like spheres, boxes, splines, or even NURBS,
behind the scenes they eventually turn everything into a mesh.
Meshes are inherently inaccurate because a mesh is simply a collection
flat triangles. Even if the surface is curved, a mesh modeler
still represents it with flat triangles. This is fine for most
renderings, animations, and games, but not when designing for
manufacturing. It should be noted that many manufacturing processes
use meshes but the mesh density must be under the control of the
manufacturing application to achieve the desired accuracy. Rhino
does not use meshes for modeling, but it can convert NURBS to
meshes at any density as needed for file exports and rendering.
The
second method is NURBS. Most CAD, CAM, CAE, and CAID modelers,
including Rhino, represent free-form shapes as NURBS. Products
that use NURBS can potentially represent free-form shapes accurately
enough for the most demanding application if they are diligent
in their NURBS implementation. If an application’s primary
focus is machinery design and not free-form shapes, it is likely
that its NURBS implementation can be less than robust for demanding
free-form modeling. This is typical of the mid-range feature-based
parametric solid modelers that are so popular today.
Since
Rhino’s focus is free-form NURBS modeling, its NURBS implementation
is one of the most robust available today. Here are the primary
considerations when evaluating whether a modeler is accurate enough
for your application:
Position.
Rhino, like most CAD products, represents position in double-precision
floating-point numbers. That means the x, y, or z coordinate of
any point can have a value ranging from as large as ±10308
to as small as ±10-308. Most CAD software, including Rhino,
uses double-precision floating-point arithmetic.
Because of the limitation of current computer technology, we expect
calculations to be accurate to 15 digits of precision in a range
from ±1020 to ±10-20. This limitation is found in
all modern CAD products.
Older
CAD products often have additional limitations because they were
developed originally to run on computers with less precision.
For example, many CAD modelers are designed for performing calculations
on geometry that is restricted to be in a box of size 1000x1000x1000
meters centered at the origin. (Geek alert: Another of the popular
off-the-shelf modeling kernels requires parameterizations that
are within a factor of 10 of being arc-length parameterizations.)
Rhino has none of the limitations found in these older products.
Intersections.
In Rhino, when two free-form surfaces are intersected, the resulting
intersection curve is calculated to the accuracy specified by
the user. The Rhino default accuracy (tolerance) is 1/100 millimeter.
Many CAD systems have built in tolerances that the user cannot
override.
If you carefully examine the geometry other modelers produce from
free-form surface intersections, free-form fillet creation, and
free-form surface offsets, you will discover that this free-form
geometry is actually calculated with accuracy between 10-2 and
10-4 meters even though they advertise precision of 10-8 (without
mentioning that the units are meters).
Continuity
(curvature change matched across a seam.) Most CAD products don’t
even have tools to match curvature, let alone do it accurately
enough for a discriminating designer. If your application requires
smooth free-form surfaces such as airfoils, hydrofoils, lenses,
or reflective surfaces, you need these tools found only in Rhino
or high-end surface modeling products like CATIA and Alias.
Other things to consider:
Units.
In Rhino the user can specify the units. The units are actually
changed and then all calculations are done in those units. In
many CAD products, units are only a display attribute. Even though
you may have specified millimeters, all of the calculations are
actually being done in meters. No big deal. You just move the
decimal place over. Wrong! Read on.
Changing units. Changing units or unit conversions can be one
of most commonly overlooked accuracy hazard in CAD/CAM. Most of
us might think that converting from imperial units to metric units
would introduce some inaccuracy while never giving millimeter
to centimeter conversions a thought. Why? Because we think in
decimal. But guess what! The computer doesn’t. It is binary
(that is base 2, not base 10). That means one or more floating-point
multiplies or divides are needed to convert from millimeters to
centimeters. The inaccuracies introduced by converting from millimeters
to centimeters are the same as those introduced by converting
from millimeters to inches.
In summary, Rhino is as accurate or more accurate than any other
CAD product on the market today. In addition, Rhino provides tools
for setting accuracy and units as well as tools for controlling
and evaluating continuity not found in most CAD products. Rhino
does not have the limitations found any of the older CAD products.
|