Measure curvature
Curvature
Toolbar | Menu |
---|---|
|
Analyze Curvature Circle |
The Curvature command evaluates the curvature at a point on a curve or surface using a circle radius.
Steps
- Select a curve.
The curvature radius of the curve at the marker will display in the status bar, and a black circle of that radius will display tangent to the curve at the marker. A white line tangent to the curve will also display.
White points mark the maximum curvature points in a portion on the curve where the curvature starts to decrease in both directions from the points.
Black points mark the minimum curvature points where the curvature circle jumps from one side of the curve to the other side. The curvature at the black points is always 0. - Pick to mark the curvature with a circle, or press Esc to end the command.
To analyze surface curvature
- Select a surface.
As you move your cursor, two half-circles display and show you the minimum and maximum curvature at that point on the curve. - Pick a point on the surface.
The following surface evaluation information displays in the command area:
- Surface curvature evaluation at parameter location
- 3-D point
- 3-D normal
- Maximum and Minimum principal curvature
- Gaussian curvature
- Mean curvature
Note
- Every location on a smooth curve has a circle that best approximates the curve at that location.
- The cursor automatically snaps to curve inflection points (where the sign of the curvature changes).
- Every location on a smooth surface has two such circles. The circle with a biggest radius is always orthogonal to the circle with a smallest radius.
- The principal curvatures are inverse of the radii of the arcs.
- The Gaussian curvature is positive when both half circles point the same way, negative when the circles point opposite ways, and zero if one of the half circles degenerates into a line.
Command-line option | |
---|---|
MarkCurvature |
Places a point object and the curvature circle or half circles at the evaluated point on a curve. Gives permanent feedback when the radius of curvature is infinite (curvature is zero, the curve is locally flat, for example at inflection points where the curve bulge changes from one side to the other) and cannot be evaluated. This does not automate finding the inflection points, but it makes it possible to mark them manually. |
Type subcrv to select part of a curve as input. |
Toolbar | Menu |
---|---|
|
Analyze Surface > Curvature Analysis |
The CurvatureAnalysis command visually evaluates surface curvature using false-color analysis. False-colors display in all display modes except Raytraced.
Note
- These tools can be used to gain information about the type and amount of curvature on a surface. Gaussian and Mean curvature analysis can show if and where there may be anomalies in the curvature of a surface.
- Unacceptably sudden changes like bumps, dents, flat areas or ripples, or in general areas of curvature that are higher or lower than the surrounding surface can be located and corrected if needed.
- Gaussian curvature display is helpful in deciding whether or not a surface can be developed into a flat pattern.
- A smooth surface has two principal curvatures. The Gaussian curvature is a product of the principal curvatures. The mean curvature is the average of the two principal curvatures.
Steps
- Select objects.
The selected surface is analyzed for Gaussian curvature by default. - Set the style and range.
Note
- If, when you use the CurvatureAnalysis command, any selected object does not have a surface analysis mesh, an invisible mesh will be created based on the settings in the Polygon Mesh Options dialog box.
- The surface analysis meshes are saved in the Rhino files. These meshes can be large. The RefreshShade command and the Save geometry only option of the Save and SaveAs commands remove any existing surface analysis meshes.
- To properly analyze a free-form NURBS surface, the analysis commands generally require a detailed mesh.
Curvature options
Style
Gaussian
In the images below, red is assigned to a positive value of Gaussian curvature, green is assigned to zero Gaussian curvature, and blue to a negative value of Gaussian curvature.
Any points on the surface with curvature values between the ones you specify will display using the corresponding color. For example, points with a curvature value half way between the specified values will be green. Points on the surface that have curvature values beyond the red end of the range will be red and points with curvature values beyond the blue end of the range will be blue.
Positive curvature
A positive Gaussian curvature value means the surface is bowl-like.
Negative curvature
A negative value means the surface is saddle-like.
Zero curvature
A zero value means the surface is flat in at least one direction. (Planes, cylinders, and cones have zero Gaussian curvature).
If you know the value range of the curvature you are interested in analyzing, type those values in the edit boxes next to the red and blue portions of the "rainbow." The values you use for red should be different from the value you use for blue, but the value for red can be larger or smaller than the value for blue.
Mean
Displays the absolute value of the mean curvature. It is useful for finding areas of abrupt change in the surface curvature.
Min radius
If you are going to offset a surface at distance r or are going to mill a surface with a cutting ball of radius r, then any place on the surface that "curves" with a radius smaller than r will cause trouble.
In the case of an offset, you'll get a twisty mess that goes through itself. In the case of the mill, your cutting ball will remove material you want to keep.
In these cases you need to be able to answer the question, "Does this surface have any place where it bends too tightly?" The Min Radius option should help you answer this question.
Set RED = r set BLUE = 1.5 x r
You cannot offset/mill anywhere on the surface that is red. Blue areas should be safe. However, you should view areas from green to red with suspicion.
Max radius
This option is useful for flat spot detection. Set the value of blue to be rather high (10‑>100‑>1000) and of red to be close to infinity. Red areas in the model then indicate flat spots where the curvature is practically zero.
Curvature Range
Using false color mapping, the CurvatureAnalysis command analyzes surface curvature. You have to map values to saturated computer colors. As a starting point, use Auto Range and then adjust the values to be symmetric but with magnitudes comparable to those selected by Auto Range.
The CurvatureAnalysis command attempts to remember the settings you used the last time you analyzed a surface. If you have dramatically changed the geometry of a surface or have switched to a new surface, these values may not be appropriate. In this case, you can use Auto Range to automatically compute a curvature value to color mapping that will result in a good color distribution.
Choose this option if you want the maximum curvature to map to red and the minimum curvature mapped to blue. On surfaces with extreme curvature variation, this may result in a rather uninformative image.
Show edges and isocurves
Display edges or isocurves on the analyzed objects.
Open Polygon Mesh Options to change analysis mesh density. Increasing mesh density improves the analyzing accuracy.
Select more objects to analyze.
Remove selected objects from the analysis.
Toolbar | Menu |
---|---|
|
|
The CurvatureAnalysisOff command closes the Curvature dialog box and turns off curvature analysis display.
Toolbar | Menu | Alias |
---|---|---|
|
Analyze Curve > Curvature Graph On |
COn |
The CurvatureGraph command visually evaluates curve and surface curvature using a graph.
Steps
- Select curves or surfaces.
A graph showing curvature appears on the selected curves, and the Curvature Graph dialog box appears. - Adjust the length, frequency, color, u and v direction display of the curvature indicators using the controls in the Curvature Graph dialog box.
Even when other commands are started, the curvature graphs and the Curvature Graph dialog box persist until you turn them off.
Span continuity | |
---|---|
Tangent |
Even though the curve spans are tangent to one another, the curvature graph suddenly changes (jumps) from one value to a different value. The spans of a degree 2 curve are G1, or tangent only. They are not curvature continuous. |
Curvature Continuous |
There are no jumps in the curvature graph. The curvature graph of the first span connects end-to-end with the curvature graph of the second span. This curve is curvature continuous (G2) across its spans because its curvature does not suddenly go from one value to another value. However, the curvature graph of the first span does not progress at the same rate as the graph of the second span. So even though the curvature stays the same, the rate of curvature suddenly changes. |
To better grasp this concept, play with the Curvature command and observe the osculating circle as it travels along curves.
Note
- On surfaces the curvature hairs only display at surface isoparametric curves. If the isoparametric curve display is turned off, curvature hairs display only at the surface boundary.
- At any location on a curve (except lines), there is a circle that most closely resembles the curve at that location. That is, it has the same tangent direction and the same rate of change of the tangent direction. The curvature displayed is a graph of (1/radius of that circle), but it is scaled by a factor set in the dialog box. If the graph changes smoothly, the curve is "smooth" or "fair." Jumps in the curvature graph indicate kinks or abrupt changes in the curve's derivatives.
Curvature Graph options
Display scale
Sets the size of the graph hairs. Remember that the scale of the changes can be greatly exaggerated. The changes in curvature may be no thicker than a coat of paint. A Display scale setting of 100 means a 1:1 curvature scale.
Density
Sets the number of graph hairs.
Curve hair
To set the curve hair color
- Click the color button to set the graph hair color for curves.
Surface hair
To set the surface hair color
- Click the color button to set the graph hair color for surfaces.
U
Displays surface hairs in the u direction only.
Color swatch sets the color for the hairs.
V
Displays surface hairs in the v direction only.
Color swatch sets the color for the hairs.
Turns on curvature graph analysis for additional selected objects.
Turns off curvature graph analysis for selected objects.
Toolbar | Menu | Alias |
---|---|---|
|
Analyze Curve > Curvature Graph Off |
COff |
The CurvatureGraphOff command turns off curvature graph display.
Curve curvature
To understand Gaussian curvature of a point on a surface, you must first know what the curvature of curve is.
At any point on a curve in the plane, the line best approximating the curve that passes through this point is the tangent line. We can also find the best approximating circle that passes through this point and is tangent to the curve. The reciprocal of the radius of this circle is the curvature of the curve at this point.
The best approximating circle may lie either to the left of the curve, or to the right of the curve. If we care about this, then we establish a convention, such as giving the curvature positive sign if the circle lies to the left and negative sign if the circle lies to the right of the curve. This is known as signed curvature.
One generalization of curvature to surfaces is normal section curvature. Given a point on the surface and a direction lying in the tangent plane of the surface at that point, the normal section curvature is computed by intersecting the surface with the plane spanned by the point, the normal to the surface at that point, and the direction. The normal section curvature is the signed curvature of this curve at the point of interest.
If we look at all directions in the tangent plane to the surface at our point, and we compute the normal section curvature in all these directions, then there will be a maximum value and a minimum value.
Surface curvature
Gaussian curvature
The Gaussian curvature of a surface at a point is the product of the principal curvatures at that point. The tangent plane of any point with positive Gaussian curvature touches the surface at a single point, whereas the tangent plane of any point with negative Gaussian curvature cuts the surface. Any point with zero mean curvature has negative or zero Gaussian curvature.
Principal curvatures
The principal curvatures of a surface at a point are the minimum and maximum of the normal curvatures at that point. (Normal curvatures are the curvatures of curves on the surface lying in planes including the tangent vector at the given point.) The principal curvatures are used to compute the Gaussian and Mean curvatures of the surface.
Mean curvature
The Mean curvature of a surface at a point is one half the sum of the principal curvatures at that point. Any point with zero mean curvature has negative or zero Gaussian curvature.
Surfaces with zero mean curvature everywhere are minimal surfaces. Surfaces with constant mean curvature everywhere are often referred to as constant mean curvature (CMC) surfaces.
CMC surfaces have the same mean curvature everywhere on the surface.
Physical processes which can be modeled by CMC surfaces include the formation of soap bubbles, both free and attached to objects. A soap bubble, unlike a simple soap film, encloses a volume and exists in an equilibrium where slightly greater pressure inside the bubble is balanced by the area-minimizing forces of the bubble itself.
Minimal surfaces are the subset of CMC surfaces where the curvature is zero everywhere.
Physical processes which can be modeled by minimal surfaces include the formation of soap films spanning fixed objects, such as wire loops. A soap film is not distorted by air pressure (which is equal on both sides) and is free to minimize its area. This contrasts with a soap bubble, which encloses a fixed quantity of air and has unequal pressures on its inside and outside.