Meshes and Nurbs30 Nov, 2002 By: John E. Wilson
This month we will finish examining formZ's tools that transform wire objects into 3D objects. formZ is a powerful, yet moderately priced 3D modeler from auto-des-sys that runs on computers using either Macintosh or Windows operating systems. For more information on formZ, visit www.formz.com. All of the tools we will examine are in formZ's Nurbs and Patches palette.
The C-Mesh tool (the C stands for controlled) is a surface version of the C-Curve tool I briefly described in the September 2002 Third Dimension column ("Wires and Walls"). The C-Curve tool, you will recall, transforms the straight segments of one vector line into a smooth curve, while the C-Mesh tool transforms a set of vector lines, which formZ calls control lines, into curves and then uses those curves as cross sections in creating a surface. You can also use wire objects that are already smoothly curved, such as arcs and splines, as control lines. The resulting surfaces are always facetted, but you have full control over the facet size and relative smoothness of the surface.
Figure 1. formZ's C-Mesh tool creates a surface from a set of control lines. The tool's Edit option displays the segments of the surface and allows you to move and twist them. An example of the Ring option is shown in the upper left-hand corner of this figure, and an example of what you can create with the C-Mesh tool is shown in the upper right.
As shown in Figure 1, control lines are spaced apart from one another. They can be open or closed, but you cannot have a mix of opened and closed control lines. formZ refers to the direction along the control lines as the mesh's length, and to the direction across the control lines as its depth. It may help you to consider the C-Mesh tool as performing a sweep operation, with the control lines being the sweep objects and implied sweep paths being drawn by formZ between matching points on the control lines. The tool is very flexible; it can adjust for differences in the number of points in the control lines, accommodate differences in directions of control lines, and control the curvature along the sweep paths (the depth curves).
Even though you can have any number of control lines, the C-Mesh tool itself will prompt you to select only two. Therefore, when you have more than two control lines (and you generally will) you must use the Pick tool to pre-select them, in their order, before you initiate the C-Mesh tool. Then, after setting the parameters of the mesh in the Tool Options palette, click anywhere in the drawing window to create the mesh.
The C-Mesh tool options are extensive, and, on some computers, some of its contents may not be visible. If this is the case, you can hold down the pick button of your pointing device to scroll through the palette's contents. You can also right-click the C-Mesh button to display the tool's options in dialog boxes. When your control lines are arranged in a circular pattern, as shown in Figure 1, select the Ring option to have the first control line connected to the last control line. The Round Front and Round Back options cause the mesh to curve inward at the specified ends. The extent of closure is controlled by the value in the Rounding Ratio Percentage edit box; with a value of 100 completely enclosing the end.
When you select Edit from the Tool Options palette, an edit mode version of the mesh is generated. In this edit mode the control- and depth-line segments are shown as heavy, dark lines along with the resulting mesh surface. You can move and twist the points on the segments as well as the segments themselves to change the shape of the mesh. When Adjust to New Parameters is selected, you can also change the curve type, the mesh density, and other parameters of an existing C-Mesh object.
formZ's Nurbz tool creates surfaces that are based on NURBS (Non-Uniform Rational B-Spline) mathematics. Unlike C-mesh surfaces, nurbz surfaces are not faceted; they are always perfectly smooth. The Nurbz tool has two options for creating surfaces from wire objects--By Lofting and By Boundary Curves.
Select By Lofting to create a nurbz surface from a set of control lines. The action is similar to the C-mesh tool, and, like the C-mesh tool, the Nurbz tool uses the word length to indicate the direction along the control lines and the word depth to indicate the direction across the control lines. When you select this option, set the Depth Degree to a value one less than the number of control lines you intend to use. Usually you will use vector lines as control lines, and they become NURBS curves as the surface is created. The Length Degree option determines how close the curves conform to the original vector lines. When you set Length Degree to 1, the vector lines are unchanged; as you increase its value, the curvature of the vector lines become flatter. The Closed In Depth option creates a surface between the first and last control lines, similar to the Ring option of the C-mesh tool.
Figure 2. The Boundary Curve option of formZ's Nurbz tool creates a surface from two, three, or four wireframe curves, as shown in these two examples. Use the Edit Controls tool to display and move the individual control points of a surface, as shown in the upper right.
The By Boundary Curves option of the Nurbz tool creates a surface from two, three, or four open boundary curves, as shown in Figure 2. Ideally you should draw the curves so that they touch one another end-to-end, but formZ can accomodate gaps and overlaps between them. This option does not, however, change the shape of the boundary curves. An idiosyncrasy of this option is you will always be prompted to select four boundary curves. Therefore, when you intend to use just two or three boundary curves, you must use the Pick tool to preselect them, and then just click anywhere in the window to create the surface. When using either method of boundary curve selection, the order in which you pick the curves is of no consequence.
You can also use the Nurbz tool to transform an analytic primitive object (see "formZ Basics") into Nurbz objects. This does not change the shape of the objects, but it does give you more options and controls in editing them. Furthermore, you can convert objects of revolution, sweep objects, skins, and helixes to nurbz objects.
The Nurbz tool has an Edit option that displays a dialog box showing the results of the operation and allowing you to examine the surface and change some of the basic parameters of the equations behind the surface. For serious editing, you'll use the Edit Controls tool in formZ's Pick palette. When you click on a Nurbz surface with this tool, all of its control points are displayed, and when you click anywhere in the window while pressing the option key on Macintosh computers or ctrl+shift on Windows computers, a menu with options for editing the surface displays, also shown in Figure 2.
The other four tools on formZ's Nurbs and Patches palette are for creating and working with patches. You will often use patches to create organic 3D shapes. For example, in modeling a toy duck, you could start with a cube, turn it into a patch, and then pull and manipulate the control points of the patch to form the shape you want. The Patch Derive tool transforms existing surface and solid objects into patch objects. As an option, you can round sharp corners of the object as it is transformed. The Patch Grow tool creates a patch from the open edges of an existing patch. The Patch Divide tool subdivides an existing patch to create additional control points. You will use this tool to more finely edit a patch. The remaining patch tool, Patch Attach, joins two patches.