Rhino Level 2 v4
Rhinoceros
®
NURBS modeling for Windows
Training Manual
Level 2
Version 4.0
R40TML2-11-2006
Rhinoceros Level 2 Training Manual v4.0
© Robert McNeel & Associates 2006
All Rights Reserved.
Printed in U.S.A.
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or
distributed for profit or commercial advantage. To copy otherwise, to republish, to post on servers, or to redistribute to lists requires prior specific permission.
Request permission to republish from: Publications, Robert McNeel & Associates, 3670 Woodland Park Avenue North, Seattle, WA 98103; FAX (206) 5457321; e-mail [email protected]
Table of Contents
Part One: Introduction ......................................................................1
Introduction .......................................................................................3
Course Objectives
4
Part Two: Customization ..................................................................7
Customizing Rhino............................................................................9
Advanced Surfacing Techniques .................................................105
Dome-shaped buttons
105
Creased surfaces
118
Curve fairing to control surface shapes
128
Use Background Bitmaps.............................................................135
The toolbar layout
9
An Approach to Modeling .............................................................143
Command aliases
19
Use 2-D Drawings..........................................................................163
Shortcut keys
20
Use 2-D drawings as part of a model
163
Plug-ins
21
Make a model from a 2-D drawing
174
Scripting
22
Surface Analysis............................................................................181
Template files
24
Sculpting ........................................................................................189
Part Three: Advanced Modeling Techniques ................................29
Troubleshooting ............................................................................197
NURBS Topology ............................................................................31
Curve Creation.................................................................................37
General strategy
197
Polygon Meshes from NURBS Objects .......................................201
Curve degree
37
Part Four: Rendering ....................................................................209
Curve and surface continuity
40
Rendering with Rhino ...................................................................211
Curve continuity and curvature graph
42
Rendering with Flamingo .............................................................215
Surface Continuity ..........................................................................61
Add lights
219
Analyze surface continuity
61
Image and bump maps
226
Surfacing commands that pay attention to continuity
71
Decals
229
Additional surfacing techniques
87
Robert McNeel & Associates ‰
iii
List of Exercises
Exercise 1—Trackball Mouse (Warm-up) ......................................... 5
Exercise 31—Rendering ............................................................. 215
Exercise 2—Customizing Rhino’s interface ..................................... 10
Exercise 3—Topology ................................................................. 31
Exercise 4—Trimmed NURBS ....................................................... 34
Exercise 5—Curve Degree ........................................................... 38
Exercise 6—Geometric Continuity................................................. 50
Exercise 7—Tangent Continuity ................................................... 52
Exercise 8—Curvature Continuity ................................................. 58
Exercise 9—Surface Continuity .................................................... 62
Exercise 10—Continuity Commands ............................................. 71
Exercise 11—Patch options.......................................................... 78
Exercise 12—Lofting................................................................... 79
Exercise 13—Blends ................................................................... 81
Exercise 14—Blends Options ....................................................... 83
Exercise 15—Fillets and Blends .................................................... 87
Exercise 16—Variable Radius Blend .............................................. 91
Exercise 17—Fillet with patch ...................................................... 93
Exercise 18—Soft Corners........................................................... 95
Exercise 19—Soft Domed Buttons ...............................................106
Exercise 20—Surfaces with a crease............................................118
Exercise 21—Surfaces with a crease (Part 2) ................................124
Exercise 22—Handset ................................................................135
Exercise 23—Cutout ..................................................................143
Exercise 24—Importing an Adobe Illustrator file............................163
Exercise 25—Making a detergent bottle .......................................174
Exercise 26—Surface Analysis ....................................................181
Exercise 27—Dashboard ............................................................190
Exercise 28—Troubleshooting .....................................................200
Exercise 29—Meshing ................................................................202
Exercise 30—Rhino Rendering ....................................................211
Robert McNeel & Associates θ
v
Part One:
Introduction
Notes:
1
Introduction
This course guide accompanies the Level 2 training sessions in Rhinoceros. This course is geared to individuals
who will be using and/or supporting Rhino.
The course explores advanced techniques in modeling to help participants better understand how to apply Rhino’s
modeling tools in practical situations.
In class, you will receive information at an accelerated pace. For best results, practice at a Rhino workstation
between class sessions, and consult your Rhino reference manual for additional information.
Duration:
3 days
Prerequisites:
Completion of Level I training, plus three months experience using Rhino.
Robert McNeel & Associates θ
3
Notes:
Course Objectives
In Level 2, you learn how to:
•
Customize toolbars and toolbar collections
•
Create simple macros
•
Use advanced object snaps
•
Use distance and angle constraints with object snaps
•
Construct and modify curves that will be used in surface building using control point editing methods
•
Evaluate curves using the curvature graph
•
Use a range of strategies to build surfaces
•
Rebuild surfaces and curves
•
Control surface curvature continuity
•
Create, manipulate, save and restore custom construction planes
•
Create surfaces and features using custom construction planes
•
Group objects
•
Visualize, evaluate, and analyze models utilizing shading features
•
Place text around an object or on a surface
•
Map planar curves to a surface
•
Create 3-D models from 2-D drawings and scanned images
•
Clean up imported files and export clean files
•
Use rendering tools
Robert McNeel & Associates θ
4
Notes:
Exercise 1—Trackball Mouse (Warm-up)
1
2
Begin a new model, save as Trackball.3dm.
Model a trackball mouse on your own.
The dimensions are in millimeters. Use the dimensions as guides only.
Robert McNeel & Associates θ
5
Part Two:
Customization
Notes:
2
Customizing Rhino
The toolbar layout
The toolbar layout is the arrangement of toolbars containing command buttons on the screen. The toolbar layout
is stored in a file with the .tb extension that you can open and save. Rhino comes with a default toolbar collection
and automatically saves the active toolbar layout before closing unless the .tb file is read-only. You can create
your own custom toolbar collections and save them for later use.
You can have more than one toolbar collection open at a time. This allows greater flexibility to display toolbars for
particular tasks.
Rhino’s customization tools make it easy to create and modify toolbars and buttons. Adding to the flexibility is the
ability to combine commands into macros to accomplish more complex tasks. In addition to toolbar customization,
it is possible to set up command aliases and shortcut keys to accomplish tasks in Rhino.
Robert McNeel & Associates θ
9
Notes:
Exercise 2—Customizing Rhino’s interface
In this exercise we will create buttons, toolbars, macros, aliases, and shortcut keys that will be available to use
throughout the class.
To create a custom toolbar collection:
1
2
3
4
5
Open the model ZoomLights.3dm.
From the Tools menu, click Toolbar Layout.
Highlight the Default toolbar collection.
From the Toolbars dialog box File menu, click Save As.
Type Level 2 Training in the File name box, and click Save.
A copy of the current default toolbar collection has been saved under the new name. Toolbar collections are
saved with a .tb extension. You will use this new toolbar collection to do some customization.
Edit Toolbar Layout
In the Toolbars dialog box all the open toolbar collections are listed along with a list of all the individual
toolbars for the selected toolbar collection. Check boxes show the current state of the toolbars. A
checked box indicates that the toolbar is displayed.
Robert McNeel & Associates θ
10
Notes:
To create a new toolbar:
1
2
In the Toolbars dialog box, from the Toolbar menu, click New.
In the Toolbars Properties dialog box, name the toolbar Zoom, and click OK.
A new single button toolbar appears.
3
Close the Toolbars dialog box.
Another way to work with toolbars is to right-click in the title bar of a floating toolbar.
A popup list of toolbar options and commands displays.
Robert McNeel & Associates θ
11
Notes:
To edit the new button:
1
2
3
4
5
Hold down the Shift key and right-click the blank button in the new toolbar.
The Edit Toolbar Button dialog box appears with fields for commands for the left and right mouse buttons,
as well as for the tooltips.
In the Edit Toolbar Button dialog box, under Tooltips, in the Left box, type Zoom Extents except lights.
In the Right box, type Zoom Extents except lights all viewports.
In the Left Mouse Button Command box, type ! _SelNone _SelLight _Invert _Zoom _Selected
_SelNone
In the Right Mouse Button Command box, type ! _SelNone _SelLight _Invert _Zoom _All _Selected
_SelNone
Robert McNeel & Associates θ
12
Notes:
To change the bitmap image for the button:
1
2
3
4
In the Edit Toolbar Button dialog box, click the Edit Bitmap button.
The bitmap editor is a simple paint program that allows editing of the icon bitmap. It includes a grab function
for capturing icon sized pieces of the screen, and an import file function.
If the bitmap is too large, only a portion of the center is imported.
From the File menu, click Import Bitmap, and select the ZoomNoLights.bmp.
You can import any bitmap image of the correct pixel dimensions allowing you to make button icons any
bitmap images.
In the Edit Bitmap dialog box, make any changes to the picture, and click OK.
Double-click on the color swatches below the standard color bar to access the Select Color dialog for more
color choices.
Click OK in the Edit Toolbar Button dialog box.
Robert McNeel & Associates θ
13
Notes:
To change the bitmap image to use an alpha channel:
1
2
3
4
5
Notice that the new button’s background color does not match the background color of the other buttons. We
will change the image background using an alpha channel, so that it matches the Windows 3D Objects color
like the other buttons.
Hold down the Shift key and right-click the ZoomNoLights button.
In the Edit Toolbar Button dialog box, click the Edit Bitmap button.
Change the alpha color number for the right button color from 255 to 1.
This will make the right button color transparent.
Change to the Fill tool, then right click in the background area of the button image.
The color matches the Windows 3D Objects color.
Click OK in the Edit Toolbar Button dialog box.
Robert McNeel & Associates θ
14
Notes:
To use the new button:
1
Click the ZoomNoLights button.
2
Use the button to zoom the model two ways.
You will notice that it ignores the lights when doing a zoom extents.
Rules for commands in buttons
You can enter the commands or command combinations in the appropriate boxes, using these rules:
•
A space is interpreted as Enter. Commands do not have spaces (for example, SelLight) but you must
leave a space between commands
•
If your command string refers to a file, toolbar, layer, object name, or directory for which the path
includes spaces, the path, toolbar name, or directory location must be enclosed in double-quotes.
•
A ! followed by a space is interpreted as Cancel. Generally it is best to begin a button command with !
if you want to cancel any other command which may be running when you click the button.
•
View manipulation commands like Zoom can be run in the middle of other commands. For example, you
can zoom and pan while picking curves for a loft. An '(apostrophe) prior to the command name indicates
that the next command is a nestable command.
•
An _ (underscore) runs a command as an English command name.
Rhino can be localized in many languages. The non-English versions will have commands, prompts,
command options, dialog boxes, menus, etc., translated into their respective languages. English
commands will not work in these versions. For scripts written in English to work on all computers
(regardless of the language of Rhino), the scripts need to force Rhino to interpret all commands as
English command names, by using the underscore.
•
A - (hyphen) suppresses a dialog box.
All commands are now scriptable at the command line (even commands that have dialog boxes by
default). To suppress the dialog box and use command-line options, prefix the command name with a
hyphen (-).
•
User input and screen picks are allowed in a macro by putting the Pause command in the macro.
Commands that use dialog boxes, such as Revolve, do not accept input to the dialog boxes from
macros. Use the hyphen form of the command (-Revolve) to suppress the dialog box and control it
entirely from a macro.
Robert McNeel & Associates θ
These rules also apply to scripts
run using the
ReadCommandFile command
and pasting text at the command
prompt.
More sophisticated scripting is
possible with the Rhino Script
plug-in, but quite a lot can be
done with the basic commands
and macro rules.
Some useful commands to are:
•
SelLast
•
SelPrev
•
SelName
•
Group
•
SetGroupName
•
SelGroup, Invert
•
SelAll
•
SelNone
•
ReadCommandFile
•
SetWorkingDirectory
15
Notes:
To link a toolbar to a button:
1
2
3
4
Shift+right-click the Zoom Extents button in the Standard toolbar.
Under Linked toolbar in the Name list, select Zoom and click OK.
Now the Zoom Extents button has a small white triangle in the lower right corner indicating it has a linked
toolbar.
Zoom Extents
Click and hold the Zoom Extents button to fly out your newly created single button toolbar.
If you close the Zoom toolbar you just created, you can always re-open it using the linked button.
Try the new linked button.
Robert McNeel & Associates θ
16
Notes:
To copy a button from one toolbar to another:
1
2
3
Hold the Ctrl key and move your mouse to the button on the far right of the Standard toolbar.
The tooltip indicates that left-click and drag will copy the button and right-click and drag will Copy the button
to another toolbar and Link its toolbar to the duplicated button.
Copy the button one space over in the same toolbar.
In the OK to duplicate button dialog box, click Yes.
4
5
6
7
8
9
Hold down the Shift key and right-click on the button you copied to edit the button.
In the Edit Toolbar Button dialog box, under Linked toolbar in the Name list, select Main1.
Delete all the text in the boxes for both left and right mouse button commands.
Under Tooltips, in the Left box, type Main 1 Toolbar.
In the Button text box, type MAIN 1.
Click the Show text only radio button.
Robert McNeel & Associates θ
17
Notes:
10 Click OK to close the dialog boxes and return to the Rhino window.
11 Undock the Main1 toolbar and close it.
12 Click on the new button that you just made.
The Main1 toolbar flies out instantly and is available. This allows the viewports to be larger than when the
Main1 toolbar was docked on the side.
13 Fly out the Main1 toolbar and tear it off, so it is displayed (floating).
To add a command to an existing button:
1
2
3
4
5
Hold the Shift key and right click the Copy button on the Main1 toolbar.
In the Edit Toolbar Button dialog box, in the Right Mouse Button Command box, type ! _Copy _Pause
_InPlace.
In the Edit Toolbar Button dialog box, in the Right Tooltip box, type Duplicate.
This button will allow you to duplicate objects in the same location. We will use this command several times
during the class.
Copy
Select one of the objects in the model and right click on the Copy button.
Move the selected object so that you can see the duplicate.
Robert McNeel & Associates θ
18
Notes:
Command aliases
The same commands and macros that are available for buttons are also available for command aliases. Command
aliases are useful productivity features in Rhino. They are commands and macros which are activated whenever
commands are allowed, but are often used as a keyboard shortcut followed by Enter, Spacebar or clicking the
right mouse button.
To make a command alias:
1
2
3
Open the model Aliases.3dm.
From the Tools menu, click Options.
In the Rhino Options dialog box, on the Aliases page, add aliases and command strings or macros.
The alias is in the left column and the command
string or macro is in the right column. The
same rules apply here as with the buttons.
Aliases can be used within other aliases' macros
or button macros.
4
5
6
7
Click New to make a new alias.
We will make aliases to mirror selected objects vertically and horizontally across the origin of the active
construction plane. These are handy when making symmetrical objects built centered on the origin.
Type mv in alias column. Type Mirror pause 0 1,0,0 in the command macro column.
Click New to make another new alias.
Type mh in alias column. Type Mirror pause 0 0,1,0 in the command macro column.
Robert McNeel & Associates θ
Options
When making aliases, use keys
that are close to each other or
repeat the same character 2 or 3
times, so they will be easy to
use.
19
Notes:
8
Select some geometry and try the new aliases out. Type mh or mv and press Enter.
If no objects are pre-selected, the Pause in the script prompts you to select objects, and a second Enter will
complete the selection set.
To import command aliases:
1
2
3
From the Tools menu, click Commands, then click Import Command Aliases.
In the Open Text File dialog box, select Aliases.txt.
The alias text file contains alias definitions.
Open the Options dialog box to see the new aliases.
Shortcut keys
The same commands, command strings, and macros that you can use for buttons are also available for keyboard
shortcuts. Shortcuts are commands and macros that are activated by a function key, Ctrl, Alt, and Shift
combinations, and an alphanumeric key on the keyboard.
To make a shortcut key:
1
2
From the Tools menu, click Options.
In the Rhino Options dialog box, on the Keyboard page, you can add command strings or macros.
There are several shortcut keys that already
have commands assigned. The same rules
apply here as with the buttons.
Robert McNeel & Associates θ
20
Notes:
3
4
5
Click in the column next to the F4 to make a new shortcut.
Type DisableOsnap Toggle for the shortcut.
This shortcut will make it easy to toggle the state of running object snaps.
Close the dialog box and try it out.
Plug-ins
Plug-ins are programs that extend the functionality of Rhino.
Several plug-ins are included and automatically install with Rhino. Many others are available for download from
the Rhino website.
A Bonus Tools plug-in is available for download from:
http://www.rhino3d.com/download.htm
Plug-in Manger
To load a plug-in:
1
2
3
From the Tools menu, click Plug-in Manager.
In the Plug-in Manager dialog box, click Install.
In the Load Plug-In dialog box, navigate to the Plug-ins folder, and click one of the *.rhp files.
Robert McNeel & Associates θ
21
Notes:
Scripting
Rhinoceros supports scripting using VBScript.
To script Rhino, you must have some programming skills. Fortunately, VBScript is simpler to program than many
other languages, and there are materials available to help you get started. VBScript is a programming language
developed and supported by Microsoft.
We will not cover how to write a script in this class, but we will learn how to run a script and apply it to a button.
The following script will list information about the current model.
To load a script:
1
2
3
4
From the Tools menu, click RhinoScript, then click Load.
In the Load Script File dialog box, click Add.
In the Open dialog box, select CurrentModelInfo.rvb, then click Open.
In the Load Script File dialog box, highlight CurrentModelInfo.rvb, then click Load.
5
6
7
Save the current model. If you don’t have a saved version of the model, no information is possible.
From the Tools menu, click RhinoScript, then click Run.
In the Run Script Subroutine dialog box, click CurrentModelInfo and then click OK.
Robert McNeel & Associates θ
22
Notes:
To edit the script file:
1
2
3
4
From the Tools menu, click RhinoScript, then click Edit.
On the Edit Script window, from the File menu, click Open.
On the Open dialog box, select CurrentModelInfo.rvb, then click Open.
We will not be editing script files in this class. This exercise is to show how to access the editing feature if
needed.
Close the Edit Script window.
To make a button that will load or run a script:
1
2
3
From the Tools menu, click Toolbar Layout.
In the Toolbars dialog box, check the File toolbar then Close the dialog.
Right click on the Title bar of the File toolbar, then click Add Button from the popup menu.
You may get a message that
Rhino “Cannot find the script file
CurrentModelInfo.rvb.”
If that happens you will need to
include the full path to the folder
where the script file is located.
Another solution is to add a
search path in the Files section
of Rhino Options.
4
To edit the new button, hold down the Shift key and right-click on the new button that appeared in the File
toolbar.
5 In the Edit Toolbar Button dialog box, in the Left Tooltip, type Current Model Information.
6 In the Right Tooltip, type Load Current Model Information.
7 In the Left Mouse Button Command box, type ! -RunScript (CurrentModelInfo).
8 In the Right Mouse Button Command box, type ! -LoadScript “CurrentModelInfo.rvb”.
9 In the Edit Toolbar Button dialog box, click Edit Bitmap.
10 In the Edit Bitmap dialog box, from the File menu, click Import Bitmap, and Open the
CurrentModelInfo.bmp, then click OK.
11 In the Edit Toolbar Button dialog box, click OK.
12 Try the new button.
Robert McNeel & Associates θ
23
Notes:
Template files
A template is a Rhino model file you can use to store basic settings. Templates include all the information that is
stored in a Rhino 3DM file: objects, grid settings, viewport layout, layers, units, tolerances, render settings,
dimension settings, notes, etc.
You can use the default templates that are installed with Rhino or save your own templates to base future models
on. You will likely want to have templates with specific characteristics needed for particular types of model
building.
The standard templates that come with Rhino have different viewport layouts or unit settings, but no geometry,
and default settings for everything else. Different projects may require other settings to be changed. You can have
templates with different settings for anything that can be saved in a model file, including render mesh, angle
tolerance, named layers, lights, and standard pre-built geometry and notes.
If you include notes in your template, they will show in the File Open dialog.
The New command begins a new model with a template (optional). It will use the default template unless you
change it to one of the other templates or to any other Rhino model file.
The SaveAsTemplate command creates a new template file.
To change the template that opens by default when Rhino starts up, choose New and select the template file you
would like to have start when Rhino starts, then check the Use this file when Rhino starts box.
To create a template:
1
2
3
4
Start a new model.
Select the Small Objects - Inches.3dm file as the template.
From the Render menu, click Current Renderer, then click Rhino Render.
From the File menu, click Properties.
Robert McNeel & Associates θ
24
Notes:
5
In the Document Properties dialog box, on the Grid page, change the Snap spacing to 0.1, the Minor
grid lines every to 0.1, the Major lines every to 10, and the Grid extents to 10.
6
On the Mesh page change the setting to Smooth and slower.
Robert McNeel & Associates θ
25
Notes:
7
On the Rhino Render page, check Use lights on layers that are off.
8
Open the Layers dialog box and rename Layer 05 to Lights, Layer 04 to Curves, and Layer 03 to
Surfaces.
Make the Lights layer current.
Delete Default, Layer 01 and Layer 02 layers.
Close the dialog box.
Robert McNeel & Associates θ
26
Notes:
9
Set up two spotlights so that they point at the origin and are approximately 45 degrees from the center and
tilted 45 degrees from the construction plane.
10 To make the Curves layer the only visible layer, from the Edit menu, click Layers, then click One Layer On.
then select the Curves layer.
11 From the File menu, click Notes.
Type the details about this template.
One Layer ON
12 From the File menu, click Save As Template and navigate to the templates directory.
Name the template Small Objects –Decimal Inches - 0.001.3dm.
This file with all of its settings is now available any time you start a new model. You should make custom
templates for the kind of modeling that you do regularly to save set up time.
Robert McNeel & Associates θ
27
Notes:
To set a default template:
1
2
3
From the File menu, click New.
Select the template you want to use as the default template.
In the Open Template File dialog box, check the Use this file when Rhino starts checkbox.
Robert McNeel & Associates θ
28
Part Three:
Advanced Modeling Techniques
Notes:
3
NURBS Topology
NURBS surfaces always have a rectangular topology. Rows of surface points and parameterization are organized
in two directions, basically crosswise to each other. This is not always obvious when creating or manipulating a
surface. Remembering this structure is useful in deciding which strategies to use when creating or editing
geometry.
Exercise 3—Topology
1
2
3
4
This exercise will demonstrate how NURBS topology is organized and discuss some special cases that need to
be considered when creating or editing geometry.
Open the model Topology.3dm.
There are several surfaces and curves visible on the current layer.
Turn on the control points of the simple rectangular plane on the left.
It has four control points, one at each corner—this is a simple untrimmed planar surface that shows the
rectangular topology.
Now turn on the control points of the second, more curvy surface.
There are many more points, but it is clear that they are arranged in a rectangular fashion.
Now select the cylinder.
It appears as a continuous circular surface, but it also has a rectangular boundary.
Robert McNeel & Associates θ
Control Points On
31
Notes:
5
Use the ShowEdges command (Analyze menu: Edge Tools > click Show Edges) to highlight the surface
edges.
Show Edges
Notice that there is a seam highlighted on the
cylinder. The seam that is highlighted
represents two edges of the rectangle, while the
other two edges are circular at the top and the
bottom. The rectangular topology is present
here, also.
6
7
Now select the sphere.
It appears as a closed continuous object, but it also has a rectangular boundary.
Use the ShowEdges command to highlight the edges.
Notice that there is a seam highlighted on the
sphere. The seam that is highlighted represents
two edges of the rectangle, while the other two
edges are collapsed to a single point at the poles.
The rectangular topology is present here, also,
though very distorted.
When all of the points of an untrimmed edge are
collapsed into a single point, it is called a
singularity.
8
9
With the sphere selected, press F11 followed by F10.
The control points of the first two surfaces have been turned off (F11) and those of the sphere have been
turned on (F10).
Zoom Target (View menu: Zoom > Zoom Target) draw a select window very tight around one of the poles of
the sphere.
Robert McNeel & Associates θ
A singularity is a special case,
but as a general rule it is better
not to stack one control point on
top of another.
If internal points of an edge are
collapsed or stacked into a single
point, some operations may fail.
In addition, some downstream
programs may have difficulty with
the model.
Zoom Target
(right mouse button option)
32
Notes:
10 Select the point at one pole of the sphere and start the Smooth (Transform menu: Smooth) command.
11 In the Smooth dialog box, uncheck Smooth Z, then click OK.
A hole appears at the pole of the sphere. There’s no longer a singularity at this pole of the sphere.
Smooth
ShowEdges will highlight this as an edge as well.
12 Use the Home key to Zoom back out.
This is the fastest way to step back through view changes.
To select points:
1
Open the Select Points toolbar.
2
3
Select a single point at random on the sphere.
From the toolbar, click Select U.
An entire row of points is selected.
Clear the selection by clicking in an empty area and select another point on the sphere.
From the toolbar, click Select V.
A row of points in the other direction of the rectangle is selected. This arrangement into U and V directions is
always the case in NURBS surfaces.
Try the other buttons in this toolbar on your own.
4
5
6
Robert McNeel & Associates θ
Select U
Select V
33
Notes:
Exercise 4—Trimmed NURBS
1
2
Open the model Trimmed NURBS.3dm.
This surface has been trimmed out of a much larger surface. The underlying four sided surface data is still
available after a surface has been trimmed, but it is limited by the trim curves (edges) on the surface.
Select the surface and turn on the control points.
Control points can be manipulated on the trimmed part of the surface or the rest of the surface, but notice
that the trimming edges also move around as the underlying surface changes. The trim curve always stays on
the surface.
To remove the trims from a surface:
1
2
Start the Untrim (Surface menu: Surface Edit Tools > Untrim) command.
Select the edge of the surface.
Untrim
The original underlying surface appears and the trim
boundary disappears.
3
Use the Undo command to return to the previous trimmed surface.
Robert McNeel & Associates θ
34
Notes:
To detach a trimming curve from a surface:
1
2
Start the Untrim command with the KeepTrimObjects option set to Yes (Surface menu: Surface Edit
Tools > Detach Trim).
Select the edge of the surface.
Detach Trim
The original underlying surface appears. The
boundary edges are converted to curves, which
are no longer associated with the surface.
3
Undo to return to the previous trimmed surface.
Undo
To shrink a trimmed surface:
1
2
Start the ShrinkTrimmedSrf command (Surface menu: Surface Edit Tools > Shrink Trimmed Surface).
Select the surface and press Enter to end the command.
Shrink Trimmed Surface
The underlying untrimmed surface is replaced
by a one with a smaller range that matches the
old surface exactly in that range. You will see
no visible change in the trimmed surface. Only
the underlying untrimmed surface is altered.
Robert McNeel & Associates θ
35
Notes:
4
Curve Creation
We will begin this part of the course by reviewing a few concepts and techniques related to NURBS curves that will
simplify the learning process during the rest of the class. Curve building techniques have a significant effect on
the surfaces that you build from them.
Curve degree
The degree of a curve is related to the extent of the influence a single control point has over the length of the
curve.
For higher degree curves, the influence of any single point is less in a specific part of the curve but affects a
longer portion of the curve.
In the example below, the five curves have their control points at the same six points. Each curve has a different
degree. The degree can be set with the Degree option in the Curve command.
Robert McNeel & Associates θ
37
Notes:
Exercise 5—Curve Degree
1
2
3
Open the model Curve Degree.3dm.
Use the Curve command (Curve menu: Free-Form > Control Points) with Degree set to 1, using the Point
object snap to snap to each of the points.
Curve
Use the Curve command with Degree settings of 2, 3, 4, and 5 to create four more curves. Use the Point
object snap to snap to each of the points.
Robert McNeel & Associates θ
38
Notes:
4
5
6
Use the CurvatureGraphOn command (Analyze menu: Curve > Curvature Graph On) to turn on the
curvature graph for one of the curves. The graph indicates the curvature on the curve—this is the inverse of
the radius of curvature. The smaller the radius of curvature at any point on the curve, the larger the amount
of curvature.
Curvature Graph On
View the curvature graph as you drag some control points. Note the change in the curvature hairs as you
move points.
Repeat this process for each of the curves. You can use the Curvature Graph dialog buttons to remove or
add objects from the graph display.
Robert McNeel & Associates θ
39
Notes:
Curve and surface continuity
Since creating a good surface so often depends upon the quality and continuity of the input curves, it is
worthwhile clarifying the concept of continuity among curves.
For most curve building and surface building purposes we can talk about four useful levels of continuity:
Not continuous
The curves or surfaces do not meet at their end points or edges. Where there is no continuity, the objects
cannot be joined.
Degree 1 curves have no
curvature and no graph
displays.
Degree 2 curves are internally
continuous for tangency—the
steps in the graph indicate this
condition. Note that the only
the graph is stepped not the
curve,
Degree 3 curves have
continuous curvature—the
graph will not show steps but
may show hard peaks and
valleys. Again, the curve is not
kinked at these places—the
graph shows an abrupt but not
discontinuous change in
curvature.
Positional continuity (G0)
Curves meet at their end points, surfaces meet at their edges.
In higher degree curves, higher
levels of continuity are
possible.
For example, a Degree 4 curve
is continuous in the rate of
change of curvature—the graph
doesn’t show any hard peaks.
A Degree 5 curve is continuous
in the rate of change of the rate
of change of curvature. The
graph doesn’t show any
particular features for higher
degree curves but it will tend to
be smooth.
Positional continuity means that there is a kink at the point where two curves meet. The curves can be
joined in Rhino into a single curve but there will be a kink and the curve can still be exploded into at least
two sub-curves. Similarly two surfaces may meet along a common edge but will show a kink or seam, a hard
line between the surfaces. For practical purposes, only the end points of a curve or the last row of points
along an edge of an untrimmed surface need to match to determine G0 continuity.
Robert McNeel & Associates θ
Changing the degree of the
curve to a higher degree with
the ChangeDegree command
with Deformable=No will not
improve the internal continuity,
but lowering the degree will
40
Notes:
Tangency continuity (G1)
Curves or surfaces meet and the directions of the tangents at the endpoints or edges is the same. You
should not see a crease or a sharp edge.
Tangency is the direction of a curve at any particular point along the curve. Where two curves meet at their
endpoints the tangency condition between them is determined by the direction in which the curves are each
heading exactly at their endpoints. If the directions are collinear, then the curves are considered tangent.
There is no hard corner or kink where the two curves meet. This tangency direction is controlled by the
direction of the line between the end control point and the next control point on a curve. In order for two
curves to be tangent to one another, their endpoints must be coincident (G0) and the second control point
on each curve must lie on a line passing through the curve endpoints. A total of four control points, two from
each curve, must lie on this imaginary line.
Curvature continuity (G2)
Curves or surfaces meet, their tangent directions are the same and the radius of curvature is the same for
each at the end point.
Note: There are higher levels of
continuity possible.
For example, G3 continuity means
that not only are the conditions for
G2 continuity met, but also that the
rate of change of the curvature is
the same on both curves or
surfaces at the common end points
or edges.
Curvature Continuity includes the above G0 and G1 conditions and adds the further requirement that the
radius of curvature be the same at the common endpoints of the two curves. Curvature continuity is the
smoothest condition over which the user has any direct control, although smoother relationships are
possible.
Robert McNeel & Associates θ
G4 means that the rate of change of
the rate of change is the same.
Rhino has tools to build such curves
and surfaces, but fewer tools for
checking and verifying such
continuity than for G0-G2.
41
Notes:
Curve continuity and curvature graph
Rhino has two analysis commands that will help illustrate the difference between curvature and tangency. In the
following exercise we will use the CurvatureGraph and the Curvature commands to gain a better understanding
of tangent and curvature continuity.
To show continuity with a curvature graph:
1
Open the model Curvature_Tangency.3dm.
There are five sets of curves, divided into two sets (a & c) that have tangency (G1) continuity at their
common ends two sets (b & d) that have or curvature (G2) continuity at their common endpoints, and one set
that has positional (G0) continuity.
Robert McNeel & Associates θ
42
Notes:
2
Use Ctrl+A to select all of the curves. Then, turn on the Curvature Graph (Analyze menu>
Curve>Curvature Graph On) for the curves.
Set the scale in the floating dialog to 100 for the moment.
The depth of the graph at this setting shows, in model units, the amount of curvature in the curve.
Robert McNeel & Associates θ
43
Notes:
3
First, notice the top sets of curves, a and b.
These have two straight lines and a curve in between. The lines do not show a curvature graph—they have no
curvature.
The G1 middle curve is an arc. It shows a
constant curvature graph as expected because
the curvature of an arc never changes, just as the
radius never changes.
On G2 curves, the graph ramps up from zero to
some maximum height along a curve and then
slopes to none, or zero curvature again on the
other straight line.
The image on the left above shows what is meant by the curvature not being continuous—the sudden jump in
the curvature graph indicates a discontinuity in curvature.
Nevertheless the line-arc-line are smoothly connected. The arc picks up the exact *direction* of one line and
then the next line takes off at the exact direction of the arc at its end.
On the other hand the G2 curves (b) again show no curvature on the lines, but the curve joining the two
straights is different from the G1 case. This curve shows a graph that starts out at zero—it comes to a point
at the end of the curve, then increases rapidly but smoothly, then tails off again to zero at the other end
where it meets the other straight. It is not a constant curvature curve and thus not a constant radius curve.
The graph does not step up on the curve, it goes smoothly from zero to its maximum. Thus there is no
discontinuity in curvature from the end of the straight line to end of the curve. The curve starts and ends at
zero curvature just like the lines have. So, the G2 case not only is the direction of the curves the same at the
endpoints, but the curvature is the same there as well—there is no jump in curvature and the curves are
considered G2 or curvature continuous.
Robert McNeel & Associates θ
44
Notes:
4
Next, look at the c and d curves.
These are also G1 and G2 but are not straight lines so the graph shows up on all of the curves.
Again, the G1 set shows a step up or down in
the graph at the common endpoints of the
curves. This time the curve is not a constant
arc—the graph shows that it increases in
curvature out towards the middle.
Robert McNeel & Associates θ
On G2 curves, the graph for the middle curve
shows the same height as the adjacent curves
at the common endpoints—there are no abrupt
steps in the graph. The outer curve on the
graph from one curve stays connected to the
graph of the adjacent curve.
45
Notes:
To show continuity with a curvature circle:
1
Start the Curvature command (Analyze menu>Curvature circle) and select the middle curve in set c.
The circle which appears on the curve indicates the radius of curvature at that location—the circle which
would result from the center and radius measured at that point on the curve.
2
Drag the circle along the curve.
Notice that where the circle is the smallest, the graph shows the largest amount of curvature. The curvature
is the inverse of the radius at any point.
3
Click the MarkCurvature option on the command line.
Slide the circle and snap to an endpoint of the curve and Click to place a curvature circle.
Robert McNeel & Associates θ
46
Notes:
4
Stop the command and restart it for the other curve sharing the endpoint just picked.
Place a circle on this endpoint as well.
The two circles have greatly different radii. Again this indicates a discontinuity in curvature.
Robert McNeel & Associates θ
47
Notes:
5
Repeat the same procedure to get circles at the end points of the curves in set d.
Notice that this time the circles from each curve at the common endpoint are the same radius. These curves
are curvature continuous.
Robert McNeel & Associates θ
48
Notes:
6
Lastly, turn on the control points for the middle curves in c and d. Select the *middle* control point on either
curve and move it around.
Notice that while the curvature graph changes greatly, the continuity at each end with the adjacent curves is
not affected.
The G1 curve graphs stay stepped though the
size of the step changes.
7
The G2 curve graphs stay connected though
there is a peak that forms there.
Now look at the graphs for the G0 curves.
Notice that there is a gap in the graph—this
indicates that there is only G0 or positional
continuity.
Robert McNeel & Associates θ
The curvature circles, on the common
endpoints of these two curves, are not only
different radii, but they are also not be tangent
to one another—they cross each other. There is
a discontinuity in direction at the ends.
49
Notes:
Exercise 6—Geometric Continuity
1
2
3
Open the model Curve Continuity.3dm.
The two curves are clearly not tangent. Verify this with the continuity checking command GCon.
Start the GCon command (Analyze menu: Curve > Geometric Continuity).
Click near the common ends (1 and 2) of each curve.
Rhino displays a message on the
command line indicating the curves
are not touching at the ends:
Geometric Continuity
Curve end difference = 0.0304413
Tangent difference in degrees = 10.2772
Radius of curvature difference = 126.531
Curvature direction difference in degrees = 10.2772
Curve ends are out of tolerance.
To make the curves have position continuity:
1
2
Turn on the control points for both curves and zoom in on the common ends.
Turn on the Point object snap and drag one of the end points onto the other.
Robert McNeel & Associates θ
50
Notes:
3
Repeat the GCon command.
The command line message is
different now:
4
Curve end difference = 0
Tangent difference in degrees = 10.3069
Radius of curvature difference = 126.771
Curvature direction difference in degrees = 10.3069
Curves are G0.
Undo the previous operation.
To make the curves have position continuity using Match:
Rhino has a tool for making this adjustment automatically in the Match command.
1 To try this, start the Match command (Curve menu: Curve Edit Tools > Match).
2 Pick near the common end of one of the curves.
3 Pick near the common end of the other curve.
By default the curve you pick first will be the one that is modified to match the other curve. You can make
both curves change to an average of the two by checking the Average Curves option in the following dialog
box.
4 In the Match Curve dialog box, check Position, Average Curves.
5
Match
Repeat the GCon command.
The command line message
indicates:
Robert McNeel & Associates θ
Curve end difference = 0
Tangent difference in degrees = 10.2647
Radius of curvature difference = 126.708
Curvature direction difference in degrees = 10.2647
Curves are G0.
51
Notes:
Exercise 7—Tangent Continuity
It is possible to establish a tangency (G1) condition between two curves by making sure the control points are
arranged as outlined earlier. The endpoints at one end of the curves must be coincident and these points in
addition to the next point on each curve must fall in a line with each other. This can be done automatically with
the Match command, although it is also easy to do by moving the control points using the normal Rhino
transform commands.
We will use Move, SetPt, Rotate, Zoom Target, PointsOn (F10), PointsOff (F11) commands and the object
snaps End, Point, Along, Between and the Tab lock to move the points in various ways to achieve tangency.
First, we will create some aliases that will be used in this exercise.
To make Along and Between aliases:
Along and Between are one-time object snaps that are available in the Tools menu under Object snaps. They
can only be used after a command has been started and apply to one pick. We will create new aliases for these
object snaps.
1
2
3
In the Rhino Options dialog box on the Aliases page click the New button, and then type a in the Alias
column and Along in the Command macro column.
Type b in the Alias column, and Between in the Command macro column.
Close the Rhino Options dialog box.
Robert McNeel & Associates θ
Along
Between
52
Notes:
To change the continuity by adjusting control points using the Rotate command and the Tab direction
lock:
1
2
Turn on the control points for both curves.
Select the control point (1) second from the end of one of the curves.
3
4
Start the Rotate command (Transform menu: Rotate).
Using the Point osnap, select the common end points (0) of the two curves as the center of rotation. As a
first reference point, snap to the current location of the selected control point.
Robert McNeel & Associates θ
53
Notes:
5
For the second reference point, make sure the point osnap is still active. Hover the cursor, but do not click,
over the second point (2) on the other curve. While the Point osnap flag is visible on screen, indicating the
cursor is locked onto the control point, press and release the Tab key. Do not click with the mouse.
Tab Direction Lock
The tab direction lock locks the
movement of the cursor when the
tab key is pressed. It can be used
for moving objects, dragging, curve
and line creation.
To activate tab direction lock press
and release the tab key when Rhino
is asking for a location in space.
The cursor will be constrained to a
line between it's location in space at
the time the Tab key is pressed and
the location in space of the last
clicked point.
6
Bring the cursor back over to the other curve-- notice that the position is constrained to a line between the
center of rotation and the second point on the second curve- that is the location of the cursor when you hit
the tab key. You can now click the mouse on the side opposite the second curve.
During rotation the tab direction lock knows to
make the line from the center and not from the
first reference point.
Robert McNeel & Associates θ
When the direction is locked, it can
be released with another press and
release of the Tab key, and a new,
corrected direction set with yet
another Tab key press.
The rotation end point will be exactly in line
with the center of rotation and the second point
on the second curve.
54
Notes:
To change the continuity by adjusting control points using the Between object snap:
1
2
3
4
5
6
Use the OneLayerOn command to turn on only the Curves 3d layer.
Check the continuity of the curves with the GCon command.
Turn on the control points for both curves.
Window select the common end points of both curves (1).
Use the Move command (Transform menu: Move) to move the points.
Snap to the same point (1).
One Layer ON
Move
7
8
9
Type b and press Enter to use the Between object snap.
Select the second point (2) on one curve.
Select the second point (3) on the other curve.
The common points are moved in between the two second points, aligning the four points.
10 Check the continuity.
To change the continuity by adjusting control points using the Along object snap:
1
Undo the previous operation.
Robert McNeel & Associates θ
55
Notes:
2
3
4
Select one of the second points (2 or 3).
Use the Move command (Transform menu: Move) to move the point.
Snap to the selected point.
5
6
7
Type a and press Enter to use the Along object snap.
Snap to the second point on the other curve.
Snap to the common points (1).
The point tracks along a line that goes through the two points, aligning the four points. Click to
place the point.
8
Check the continuity.
Robert McNeel & Associates θ
56
Notes:
To edit the curves without losing tangency continuity:
1
Window select the common end points or either of the second points on either curve.
Turn on the Point osnap and drag the point to the next one of the four critical points.
2
When the Point osnap flag shows on the screen, use the Tab direction lock by pressing and releasing the Tab
key without releasing the mouse button.
Now you can drag the point and the tangency will be maintained since the points are constrained
to the Tab direction lock line. Release the left mouse button at any point to place the point.
3
Release the left mouse button at any point to place the point.
Robert McNeel & Associates θ
57
Notes:
Exercise 8—Curvature Continuity
Adjusting points to establish curvature continuity is more complex than for tangency. Curvature at the end of a
curve is determined by the position of the last three points on the curve, and their relationships to one another
are not as straightforward as it is for tangency.
Match
To establish curvature or G2 continuity, the Match command is the only practical way in most cases.
To match the curves:
1
2
3
Turn on the 3D curve layer and make it current.
Turn off the 2D curve layer.
Use the Match command (Curve menu: Curve Edit Tools > Match) to match the red (1) curve to the magenta
(2) curve.
G1 continuity can be maintained
by making sure that any point
manipulation of the critical four
points takes place along the line
on which they all fall.
Once you have G1 continuity you
can still edit the curves near their
ends without losing continuity,
using the Tab direction lock.
This technique only works after
tangency has been established.
When you use Match with Curvature checked on these particular curves,
the third point on the curve to be changed is constrained to a position
calculated by Rhino to establish the desired continuity..
The only simple case, where
adjusting control points will work,
is when matching a curve to a
straight line.
Then all three of the points at the
end of the curve being matched
must fall in line with the target
line.
The curve being changed is significantly altered
in shape. Moving the third point by hand will
break the G2 continuity at the ends, though G1
will be maintained
Robert McNeel & Associates θ
58
Notes:
Advanced techniques for controlling continuity
There are two additional methods to edit curves while maintaining continuity in Rhino. (1) The EndBulge
command allows the curve to be edited while maintaining continuity. (2) Adding knots will allow more flexibility
when changing the curve's shape.
To edit the curve with end bulge
1
2
3
Right click on the Copy button to make a duplicate of the magenta curve and then Lock it.
Start the EndBulge command (Edit menu: Adjust End Bulge).
Select the magenta curve.
Adjust End Bulge
Notice that there are more points displayed
than were on the original curve.
The EndBulge command converts any curve
that has fewer than six control points to a
degree 5 curve with six or more control points.
4
Select the third point and drag it and click to place the point, and the press Enter to end the command.
If the endpoint of the curve has G2 continuity
with another curve, the G2 continuity will be
preserved, because the curvature of the
endpoint of the curve doesn't change.
Robert McNeel & Associates θ
59
Notes:
To add a knot:
1
2
3
4
Adding a knot or two to the curve will put more points near the end so that the third point can be nearer the
end. Knots are added to curves and surfaces with the InsertKnot command.
Undo your previous adjustments.
Start the InsertKnot command (Edit menu: Control Points > Insert Knot).
Select the magenta curve.
Pick a location on the curve to add a knot in between the first two points.
Insert Knot
In general a curve or surface will tend to
behave better in point editing if new knots are
placed midway between existing knots, thus
maintaining a more uniform distribution.
Adding knots also results in added control
points.
They are not the same thing and the new
control points will not be added at exactly the
new knot location.
5
Match the curves after inserting a knot into the magenta curve.
The Automatic option
automatically inserts a new knot
exactly half way between each
span between existing knots.
If you only want to place knots in
some of the spans, you should
place these individually by
clicking on the desired locations
along the curve.
Existing knots are highlighted in
white.
Inserting knots closer to the end of curves will change how much Match changes the curve.
Robert McNeel & Associates θ
60
Notes:
5
Surface Continuity
The continuity characteristics for curves can also be also applied to surfaces. Instead of dealing with the end
point, second, and third points, entire rows of points at the edge, and the next two positions away from the edge
are involved. The tools for checking continuity between surfaces are different from the simple GCon command.
Analyze surface continuity
Rhino takes advantage of the OpenGL display capability to create false color displays for checking curvature and
continuity within and between surfaces. These tools are located in the Analyze menu, under Surface. The tool
which most directly measures G0-G2 continuity between surfaces is the Zebra command. Zebra analysis
simulates reflection of a striped background on the surface.
Note: An OpenGL graphics accelerator card is not necessary to use these tools, although they may work faster
with OpenGL acceleration.
Robert McNeel & Associates θ
61
Notes:
Exercise 9—Surface Continuity
1
2
Open the model Surface Continuity.3dm.
Turn on points on both surfaces.
3
4
5
Start the MatchSrf command (Surface menu: Surface Edit Tools > Match).
Select the edge of the white surface nearest the black surface.
Select the edge of the black surface nearest the white surface.
Robert McNeel & Associates θ
Match Surface
62
Notes:
6
In the Match Surface dialog box, choose Position as the desired continuity.
Make sure the boxes for Average surfaces, Match edges by closest points, and Preserve opposite end
are unchecked.
Click OK.
Match Surface Options
Average surfaces
Isocurve direction adjustment
Both surfaces to be modified to an intermediate shape.
Specifies the way the
parameterization of the matched
surfaces is determined.
Refine match
Determines if the match results should be tested for accuracy
and refined so that the faces match to a specified tolerance.
Match edges by closest points
The surface being changed is aligned to the edge its being
matched to by pulling each point to the closest point on the
other edge.
Preserve opposite end
This adds enough knots to the span so that the edge opposite
the one being adjusted isn't changed.
Automatic evaluates the target
edge, then uses Match target
isocurve direction if it is an
untrimmed edge or Make
perpendicular to target edge if it is
a trimmed edge.
Preserve isocurve direction
As closely as possible, keeps the
existing isocurve directions the
same as they were in the surface
before matching.
Match target isocurve direction
Makes the isocurves of the surface
being adjusted parallel to those of
the surface it matches to.
Make perpendicular to target
edge
The edge of the white surface is pulled over to
match the edge of the black one.
Robert McNeel & Associates θ
Makes the isocurves of the surface
being adjusted perpendicular to the
edge being matched.
63
Notes:
To check the continuity with Zebra analysis:
1
Check the surfaces with Zebra analysis tool (Analyze menu: Surface > Zebra).
This command relies on a mesh approximation of the surface for its display information.
Zebra
By default the mesh generated by Zebra may
be too coarse to get a good analysis of the
surfaces.
2
If the display shows very angular stripes rather than smooth stripes on each surface, click the Adjust mesh
button on the Zebra dialog.
In general the analysis mesh
should be much finer than the
normal shade and render mesh.
Robert McNeel & Associates θ
64
Notes:
3
Use the detailed controls to set the mesh parameters.
For this type of mesh it is often easiest to zero out (disable) the Maximum angle setting and rely entirely on
the Minimum initial grid quads setting.
This number can be quite high but may depend upon the
geometry involved.
In this example, a setting here of 5000 to 10000 will generate a
very fine and accurate mesh.
4
The analysis can be further improved by joining the surfaces to be tested.
This will force a refinement of the mesh along the joined edge and help the Zebra stripes act more
consistently.
There is no particular correlation between the
stripes on one surface and the other except that
they touch.
This indicates G0 continuity.
Robert McNeel & Associates θ
65
Notes:
To match the surface to tangency:
1
Use the MatchSrf command (Surface menu: Surface Edit Tools > Match) again with the Tangency option.
When you pick the edge to match you will get direction arrows that indicate which surface edge is
being selected. The surface that the direction arrows are pointing toward is the surface whose
edge is selected
2
Check the surfaces with Zebra analysis.
The ends of the stripes on each surface meet
the ends on the other cleanly though at an
angle.
This indicates G1 continuity.
Robert McNeel & Associates θ
66
Notes:
To match the surface to curvature:
1
Use the MatchSrf command (Surface menu: Surface Edit Tools > Match) with the Curvature option.
2
Check the surfaces with Zebra analysis.
The stripes now align themselves smoothly
across the seam. Each stripe connects smoothly
to the counterpart on the other surface.
This indicates Curvature (G2) continuity.
Note: Doing these operations one after the other may yield different results than going straight to Curvature
without first using position. This is because each operation changes the surface near the edge, so the next
operation has a different starting surface.
Robert McNeel & Associates θ
67
Notes:
Add knots to control surface matching
As in matching curves, MatchSrf will sometimes distort the surfaces more than is acceptable in order to attain
the desired continuity. We will add knots to surfaces to limit the influence of the MatchSrf operation. The new
second and third rows of points will be closer to the edge of the surface.
Surfaces can also be adjusted with the EndBulge command.
To add a knot to a surface:
1
2
Undo the previous operation.
Use the InsertKnot command to insert a row of knots near each end of the white surface.
When this command is used on a surface, it has more options. You can choose to insert a row of knots in the
U-direction, the V-direction, or both. Choose Symmetrical to add knots at opposite ends of a surface.
3
Use MatchSrf to match the surface to the other
.
Robert McNeel & Associates θ
68
Notes:
To adjust the surface using end bulge:
The EndBulge command lets you edit the shape of a surface without changing the tangent direction and the
curvature at the edge of the surface. This is useful when you need to alter the shape of a surface that has been
matched to another surface.
EndBulge allows you to move control points at a specified location on the surface. These points are constrained
along a path that keeps the direction and curvature from changing.
The surface can be adjusted equally along the entire selected edge or along a section of the edge. In this latter
case, the adjustment takes place at the specified point and tapers out to zero at either end of the range. Either
the start or end point of the range can be coincident with the point to adjust, thus forcing the range to be entirely
to one side of the adjustment point.
1 Start the EndBulge command (Edit menu: Adjust End Bulge).
2 Pick the edge of the white surface.
3 Pick a point on the edge at which the actual adjustment will be controlled.
You can use object snaps and reference
geometry to select a point with precision.
4
Pick a point along the common edges to define the region to be adjusted. Repeat this for the End of range to
edit prompt, pick another point to define the region to be adjusted.
To select a range at this point, slide the cursor along the edge and click at the beginning and end
points of the range. If the whole edge is to be adjusted equally, simply press Enter.
Robert McNeel & Associates θ
69
Notes:
5
6
Select a point.
drag the point and click.
Rhino shows three points, of which you are
allowed to manipulate only two. When you
move the second point, notice that Rhino also
moves the third point that is not being directly
manipulated in order to maintain the continuity.
If maintaining the G2 curvature-matching
condition at the edge is not needed, use the
PreserveCurvature option to turn off one of the
two points available for editing. Only G1 will be
preserved.
7
Press Enter to end the command.
Robert McNeel & Associates θ
70
Notes:
Surfacing commands that pay attention to continuity
Rhino has several commands that that can build surfaces using the edges of other surfaces as input curves. They
can build the surfaces with G1 or G2 continuity to those neighboring surfaces. The commands are:
•
NetworkSrf
•
Sweep2
•
Patch (G1 only)
•
Loft (G1 only)
•
BlendSrf (G1 or G2)
The following exercises will provide a quick overview of these commands.
Exercise 10—Continuity Commands
To create a surface from a network of curves:
1
2
Open the model Continuity Commands.3dm.
On the Surfaces layer there are two joined surfaces which have been trimmed leaving a gap. This gap needs
to be closed up with continuity to the surrounding surfaces.
Turn on the Network layer.
There are several curves already in place which
define the required cross sections of the
surface.
Robert McNeel & Associates θ
71
Notes:
3
Use the NetworkSrf command (Surface menu: Curve Network) to close the hole with an untrimmed surface
using the curves and the edges of the surfaces as input curves.
The NetworkSrf dialog box allows you to specify the desired continuity on edge curves which have been
selected.
Surface from Curve Network
Note that there is a maximum of four edge curves as input. You can
also specify the tolerances or maximum deviation of the surface from
the input curves. By default the edge tolerances are the same as the
model's Absolute Tolerance setting. The interior curves' tolerance is set
10 times looser than that by default.
4
Change the Interior curves settings to 0.01. Choose Curvature continuity for all the edges.
The surface that is created has curvature
continuity on all four edges.
5
Check the resulting surface with Zebra analysis.
Robert McNeel & Associates θ
72
Notes:
To make the surface with a two-rail sweep:
1
2
Use the OneLayerOn command to open the Surfaces layer by itself again and then left click in the layers
panel of the status bar and select the Sweep2 layer.
Start the Sweep2 command (Surface menu: Sweep 2 Rails) and select the long surface edges as the rails.
Sweep along 2 Rails
3
Select one short edge, the cross-section curves and the other short edge as profiles.
Robert McNeel & Associates θ
73
Notes:
4
Choose Curvature for both Rail curve options.
Since the rails are surface edges, the display labels the edges, and the
Sweep 2 Rails Options dialog box gives the option of maintaining
continuity at these edges.
5
Check the resulting untrimmed surface with Zebra analysis.
Robert McNeel & Associates θ
74
Notes:
To make a patch surface:
1
2
3
4
The Patch command builds a trimmed surface, if the bounding curves form a closed loop, and can match
continuity to G1 if the bounding curves are edges.
Turn on the Surfaces, and Patch layers.
Turn all other layers off.
Start the Patch command (Surface menu: Patch).
Select the edge curves and the interior curves, and then press Enter.
In the Patch Surface Options dialog box, set the following options
Set Sample point spacing to 1.0
Set Stiffness to 1
Set Surface U and V spans to 10
Check Adjust tangency and Automatic trim, then click OK.
Patch
The finished surface does not appear to be very smooth. There are a
number of settings available for adjusting the surface accuracy. We
will make some changes and repeat the command.
Robert McNeel & Associates θ
75
Notes:
5
6
Undo the previous operation and repeat the Patch command. Select the same edges and curves.
In the Patch Surface Options dialog box, change the Surface U and V spans to 17, then click OK.
7
8
9
The finished surface appears has more isocurves but isn’t much
smoother.
Undo the previous operation.
Use the Patch command and select the same edges and curves.
In the Patch Surface Options dialog box, change the Sample point spacing to .01, then click OK.
The finished surface appears smoother.
10 Join the surfaces.
Robert McNeel & Associates θ
76
Notes:
11 Use the ShowEdges command (Analyze menu> Edge tools >Show Edges) to display naked edges.
If there are naked edges between the new patch surface and the existing polysurface the settings may need
to be further refined.
12 Check the results with Zebra analysis.
Robert McNeel & Associates θ
77
Notes:
Exercise 11—Patch options
To make a patch from an edge and points:
Patch can use point objects as well as curves and surface edges as input. This exercise will use point and edge
inputs to demonstrate how the Stiffness setting works.
1 Turn on the Surfaces, and Patch Stiffness layers.
Turn all other layers off.
2 Start the Patch command (Surface menu: Patch) and select the two point objects and the top edge of the
surface as input.
3
4
5
Check Adjust tangency and set the Surface spans to 10 in each direction.
To get a good view of the two point objects, make the Front viewport the active viewport and set it to a
wireframe view.
Set the Stiffness to .1 and click the Preview button.
With lower setting for stiffness the surface fits through the points while maintaining tangency at
the surface edge. This can show abrupt changes or wrinkles in the surface.
Robert McNeel & Associates θ
78
Notes:
6
Set the Stiffness to 5 and click the Preview button again.
With higher stiffness settings, the patch surface is made stiffer and it may not pass through the
input geometry. On the other hand the surface is less apt to show abrupt changes or wrinkles, is
often making a smoother, better surface. With very high stiffness numbers, the edges also may
have a tendency to pull away from the intended input edges.
Exercise 12—Lofting
To make a lofted surface:
1
2
3
The Loft command also has built in options for surface continuity.
Open the model Loft.3dm.
Start the Loft command (Surface menu: Loft).
Select the lower edge curve, the lower curve, the upper curve, and then the upper edge curve.
Loft
When picking the curves, pick near the same
end of each curve. This will insure that you
don’t get a twist in the surface.
4
Press Enter when done.
Robert McNeel & Associates θ
79
Notes:
5
In the Loft Options dialog box under Style, select Normal
Check Match start tangent, Match end tangent, and Do not simplify.
The new surface has G1 continuity to the original surfaces.
6
Check the results with Zebra analysis.
Robert McNeel & Associates θ
80
Notes:
Exercise 13—Blends
To make a surface blend:
The next command that pays attention to continuity with adjoining surfaces is BlendSrf.
1 Open the model Blend.3dm.
2
3
Start the BlendSrf command (Surface menu: Blend Surface), in the command line options, set
Continuity=curvature.
Select an edge along the left edge of the polysurface at the top.
Blend Surface
Notice that the whole edge doesn’t get
highlighted, only the part of the
polysurface where you picked is selected.
All will chain all edges that are G1 to the
currently selected edge. Next will add the next
G1 edge only.
4
Try each until you get the entire long edge of the polysurface selected.
Notice that neither All or Next will add the
small section of edge at the lower, right end of
the polysurface. This edge is not tangent to the
other edge selection.
If you want to include it in the blend you must
select it with a click.
Robert McNeel & Associates θ
81
Notes:
5
6
When all the desired edges are selected on the upper polysurface, press Enter .
Select the left edge of the bottom surface and press Enter.
t this point there is a dialog with sliders and one setting.
While this dialog is available, you can adjust the bulge of the blend either with
the sliders or by entering numbers.
The bulge adjustment adjusts all cross sections equally.
Make sure the Same height shapes is not checked.
7
Additional cross sections can be added at this stage by clicking on each edge in turn.
You can add as many cross-sections as necessary. In this case there is no advantage to adding
sections, so you can accept the default.
Since the small piece at the end is included the resulting surface is a polysurface due to the kink
introduced by this edge.
Robert McNeel & Associates θ
82
Notes:
8
Press Enter to make the surface.
The blend will be forced through these crosssections so they provide a measure of control
over the resulting surface.
The Continuity option will allow for curvature
(G2) continuity or tangent (G1) continuity.
Exercise 14—Blends Options
To make a surface blend with options:
In the following exercise we will first make a surface blend that creates a self-intersecting surface. Then we will
use the surface blend options to correct the problem.
1 Open the model BlendSrf Options.3dm.
2
Start the BlendSrf command (Surface menu: Blend Surface) and select the deeply curved edges of the pair
of surfaces marked 0.
Robert McNeel & Associates θ
83
Notes:
3
4
In the dialog. make sure Same height shapes is not checked, and the bulge sliders are set to 1.0, then click
Ok.
Zoom in on the surface you just created in the Top viewport.
Look closely at the middle of the blend surface in this view using a wireframe viewport. Notice the
blend has forced the surface to be self-intersecting in the middle. The isocurves cross each other
and make a pinch or crease here.
Surface blend options
To avoid self-intersecting or pinched surfaces when creating a blend you can Adjust Blend Bulge sliders, use
Same height shapes, or use the PlanarSections option.
In the following examples we will take a look at each of these options.
1
Start the BlendSrf command and select the edges of the pair of surfaces marked 1.
Adjust the sliders to make the bulge of the surface less than 1. A number between .2 and .3 seems to work
best.
The profiles of the cross sections at each end of the blend as well as any you may add between
will update to preview the bulge. Notice that the surface is not pinched in the middle.
Robert McNeel & Associates θ
84
Notes:
2
Start the BlendSrf command and select the edges of the pair of surfaces marked 2.
Change the Bulge at .5, but check the Same height shapes button.
The Same height shapes button overrides the tendency of the blend surface to get fatter or
deeper according to how far apart the edges are. The height will be the same in the center as it is
at each end. This also has the effect of making the sections of the blend push out less and
therefore not cross each other out in the middle area.
3
4
Start the BlendSrf command and select the edges of the pair of surfaces marked 3.
Pick the edges in the usual way.
Use the same buldge settings as the last pair of surfaces.
Robert McNeel & Associates θ
85
Notes:
5
Click PlanarSections on the command line.
You are now asked to define which plane the sections of the surface should be parallel to. This is defined by
clicking two points in any viewport.
Click once anywhere in the Top viewport, then with Ortho on, click again in the Top viewport in
the direction of the Y axis.
The resulting surface has it's isocurves arranged parallel to the plane defined in the
PlanarSections portion of the command. The isocurves do not intersect in the middle of the
surface since they are parallel the Y axis.
Robert McNeel & Associates θ
86
Notes:
Additional surfacing techniques
There are several methods for making surface transitions. In this exercise we will discuss a variety of ways to fill
holes and make transitions using the NetworkSrf, Loft, Sweep1, Sweep2, Blend, Fillet and Patch commands.
Fillets and Corners
While Rhino has automated functions for making fillets, there are several situations that take manual techniques.
In this section, we will discuss making corners with different fillet radii, variable radius fillets and blends, and fillet
transitions.
Exercise 15—Fillets and Blends
To make a corner fillet with 3 different radii and a curve network:
1
2
Open the model Corner Fillet.3dm.
Use the FilletEdge command (Solid menu: Fillet Edge > Fillet Edge) to fillet edge (1) with a radius of 5, edge
(2) with a radius of 3, and edge (3) with a radius of 2.
Fillet Edge
Extract Surface
Robert McNeel & Associates θ
87
Notes:
3
Start the ExtractSrf command (Solid menu: Extract Surface), then select the 3 fillets and the front surface,
the press Enter to end the command.
4
Use the Blend command (Curve menu: Blend Curves), to create curves between the edge curves of the
smaller fillet surfaces.
Note: The blend curves will not actually touch the fillet surface precisely. The blend curve is not an arc like the
fillet surface cross-section. You may have to pull the curve to the surface before trimming or use the Split
command.
Robert McNeel & Associates θ
88
Notes:
5
6
Use the Pull command (Curve menu: Curve from objects > Pullback) to pull the right-hand blend curve to the
fillet surface.
Use the Trim command to trim the surfaces with the blend and the pull curve.
7
8
Use the NetworkSrf command (Surface menu: Curve Network) to fill the hole.
Select the edge curves.
Robert McNeel & Associates θ
89
Notes:
9 Press Enter.
10 In the Surface From Curve Network dialog box, select Tangency for all four edges.
Fillets have tangency (G1) transitions. In the network surface settings
you should also choose Tangency (G1) for edge matching. If you choose
curvature continuity you will force the transition of the surface to have
G2 continuity at the edges, but this will not change the continuity of the
existing fillets. The result will be a visible wave or wrinkle in the surface.
11 Join the surfaces and check the polysurface for naked edges.
Robert McNeel & Associates θ
90
Notes:
Exercise 16—Variable Radius Blend
To make a variable radius fillet:
1
2
3
4
5
Open the model Sandal Sole.3dm.
Use the Circle command with the AroundCurve option to create circles of different radius around the bottom
edge of the sole.
Circle: Around Curve
Use the SelLayer command (Edit menu: Select Objects > By Layer...) to select the curve and the circles.
Start the Sweep1 command (Surface menu: Sweep 1 Rail) to make a variable radius pipe around the edge.
In the Sweep 1 Rail Options dialog box, check Do not simplify and Closed sweep, and then click OK.
Select Layers
Sweep along 1 Rail
Robert McNeel & Associates θ
91
Notes:
6
7
Unlock the Shoe Bottom layer.
Trim the sidewall and the bottom with the swept surface.
8
Turn off the Curve Layer and change to the Fillet layer.
Note: You may have to merge the edges (Analyze menu: Edge Tools > Merge Edge) of the trimmed surfaces
before you blend. It helps to hide the other surfaces while you merge the edges.
9
Merge Edge
Use the BlendSrf command (Surface menu: Blend Surface) to make the variable fillet.
Blend Surface
The edges being blended are closed loops. If the edges you pick do not form two closed loops
around the shoe click on the All option on the command line to complete the loop. You may want
to add cross section curves during the BlendSrf command in order to control the surface.
Robert McNeel & Associates θ
92
Notes:
10 Join the surfaces.
Exercise 17—Fillet with patch
To make a six-way fillet using a patch:
1
Open the model Fillet Edge.3dm.
Robert McNeel & Associates θ
93
Notes:
2
3
4
5
Use the FilletEdge command (Solid menu: Fillet Edge > Fillet Edge), with Radius=1, to fillet all the joined
edges at the same time.
Use the Patch command (Surface menu: Patch) to fill in the opening at the center.
Select all six edges to define the patch.
In the Patch Options dialog box, check Adjust Tangency and Automatic Trim. Change the Surface U and
V Spans to 15, and the Stiffness to 2.
When the area to fill has more
than four edges, the Patch
command works better than the
NetworkSrf command.
Patch
Robert McNeel & Associates θ
94
Notes:
Exercise 18—Soft Corners
To make a rectangular shape with a curved top and soft corners:
There are several ways to approach making a soft top like the illustration below. Often, the curves you start
with are made up of a series of arcs.
In this exercise we explore two different methods to make the surfaces using the same underlying curves.
1
Open the model Soft Corners.3dm.
Robert McNeel & Associates θ
95
Notes:
2
Use the Join command (Edit menu: Join) to join the arcs that form the base rectangular shape.
3
4
Change to the 03 Sweeps layer.
Use the Sweep1 command (Surface menu: Sweep 1 Rail) to make the first surface.
Sweep along 1 Rail
5
6
Use the Sweep1 command (Surface menu: Sweep 1 Rail) to make the second surface.
Pick the top edge of the surface you just created, then select the cross-sections in order, and press Enter.
Robert McNeel & Associates θ
96
Notes:
7
In the Sweep 1 Rail Options dialog box, change the Style to Align with surface, then click OK.
This will insure tangent continuity with the first surface.
8
Use the Patch command (Surface menu: Patch) to fill in the opening at the center.
Patch
Robert McNeel & Associates θ
97
Notes:
To make a rectangular shape with a curved top and soft corners (Part 2):
1
2
3
4
In this exercise you will start by making new curves.
Change to the 02 Separate Curves layer and turn the 03 Sweeps layer off.
Use the Extend command with the Arc option (Curve menu: Extend Curve > By Arc to a Point) to extend
each of the curves as shown below.
Press Enter.
Pick a point for the extension.
Each arc should be extended at each end using the existing arc radius.
Because the object is symmetrical, it is only necessary to extend one of each type of arc. Each
surface can be made once from these curves and mirrored.
5
Rotate the curves from their intersection with the base curve to the end of the base curve.
Use the center of the base curve as the center of rotation to rotate each of the extended arcs, as
shown above.
Robert McNeel & Associates θ
98
Notes:
6
Trim the two vertical extended arcs to the same height.
In the front or right view, create horizontal lines snapping to the end of the shortest arc and crossing the
taller one. Repeat this at the lower ends of the arcs.
Use the lines to trim the longer of the two arcs. Delete the lines.
Now the surfaces created in the following steps from these arcs will have the same vertical dimensions and
can trim one another.
Robert McNeel & Associates θ
99
Notes:
7
Rotate either one of the two larger arcs that will define the top surface of the box on the center of the other.
Snap to the center of the other arc as the center of rotation.
Rotate the arc from the intersection between the two arcs.
Rotate the arc to the end of the other arc. This insures that the rotated arc is perpendicular to the other arc at
the end.
Robert McNeel & Associates θ
100
Notes:
8
9
Change to the 04 Surfaces layer.
Use the Sweep1 command (Surface menu: Sweep 1 Rail) to make the two vertical surfaces.
Sweep along 1 Rail
When the sweep is made the surface will be perpendicular to the arc at both ends.
10 Use the MH and MV aliases you made on the first day to Mirror each of the surfaces around the origin.
Robert McNeel & Associates θ
101
Notes:
11 Use the Sweep1 command to make the top surface.
12 Use the Trim command (Edit menu: Trim) to trim the ends of the intersecting surfaces.
13 Use the Join command (Edit menu: Join) to join the surfaces.
14 Use the FilletEdge command (Solid menu: Fillet Edge > Fillet Edge) to fillet the four vertical edges with a
15mm radius.
Robert McNeel & Associates θ
102
Notes:
15 Use the FilletEdge command (Solid menu: Fillet Edge > Fillet Edge) to fillet the top edges with a 10mm
radius.
16 Use the CutPlane command (Surface menu: Plane > Cutting Plane) to make a cutting plane at the origin in
the z-axis.
17 Use the cutting plane to trim the bottom of the polysurface.
The resulting surface is very clean and smooth
with no hard edges.
Robert McNeel & Associates θ
103
Notes:
6
Advanced Surfacing
Techniques
There is an infinite number of complex and tricky surfacing problems. In this chapter we will look at several
'tricks' that help in getting certain types of surfaces built cleanly. The goal, apart from showing you a few specific
techniques used in these examples, is to suggest ways in which the Rhino tools can be combined creatively to
help solve surfacing problems.
In this chapter you will learn to make soft domed button shapes, creased surfaces, and how to use curve fairing
techniques.
Dome-shaped buttons
The surfacing goal in this exercise is to create a dome on a shape like a cell phone button where the top must
conform to the general contour of the surrounding surface but maintain its own shape as well. There are a number
of ways to approach this; we will look at three methods.
Robert McNeel & Associates θ
105
Notes:
Exercise 19—Soft Domed Buttons
1
2
Open the model Button Domes.3dm.
The key to this exercise is defining a custom construction plane that represents the closest plane through the
area of the surface that you want to match. Once you get the construction plane established, there is a
variety of approaches available for building the surface.
There are several ways to define a construction plane. In this exercise we will discuss three methods:
construction plane through three points, construction plane perpendicular to a curve, and fitting a plane to an
object.
Use OneLayerOn to turn on the Surfaces to Match layer to see the surface that determines the cut of the
button.
To create a custom construction plane using three points method:
1
2
Start the CPlane command with the 3Point option (View menu: Set CPlane > 3 Points).
In the Perspective viewport, using the Near object snap, pick three points on the edge of the trimmed hole.
Set CPlane: 3 Points
The construction plane now goes through the three points.
3
Rotate the Perspective viewport to see the grid aligned with the surface.
Robert McNeel & Associates θ
106
Notes:
To create a custom construction plane perpendicular to a curve:
With a line normal to a surface and a construction plane perpendicular to that normal line, you can define a
tangent construction plane at any given point on the surface
1
2
3
4
5
Start the CPlane command with the Previous option (Viewport title right-click menu: Set CPlane > Undo
Cplane Change).
Use the Line command with the Normal option (Curve menu: Line > Normal to Surface) to draw a line
normal to the surface at a point near the center of the trimmed hole.
Note that the command recognizes the underlying surface there even though it is trimmed away.
Start the CPlane command with the Curve option (View menu: Set CPlane > Perpendicular to Curve).
Pick the normal.
use the End object snap and pick the end of the normal where it intersects the surface.
Set CPlane: Previous
Surface Normal
Set CPlane: Perpendicular to Curve
The construction plane is set perpendicular to the normal line.
Robert McNeel & Associates θ
107
Notes:
To create a construction plane fit through points:
1
Using the PlaneThroughPt command to create a surface through a sample of extracted point objects will
generate a plane that best fits the points. The CPlane command with the Object option places a
construction plane with its origin on the center of the plane. This is a good choice in the case of the button in
this file. There are several curves from which the points can be extracted the edge of the button itself, or
from the trimmed hole in the surrounding surface.
Start the CPlane command with the Previous option (Viewport title right-click menu: Set CPlane > Undo
CPlane Change).
2
Turn on the Surfaces layer.
3
Use the DupEdge command (Curve menu: Curve From Objects > Duplicate Edge) to duplicate the top edge
of the button.
Duplicate Edge
4
Copy the duplicated curve vertically twice.
The vertical position of these curves will
determine the shape of the curved edge of the
button.
Robert McNeel & Associates θ
108
Notes:
5
Use the Divide command (Curve menu: Point Object>Divide curve by>Number of segments) to mark off the
curve with 50 points.
Divide
6
7
Use SelLast to select the points just created.
Use the PlaneThroughPt command (Surface menu: Plane > Through Points) with the selected points.
A rectangular plane is fit through the selected
points.
Robert McNeel & Associates θ
109
Notes:
8
9
Press the Delete key to delete the point objects that are still selected.
Use the CPlane command with the Object option (View menu: Set CPlane > To Object) to align the
construction plane with the plane.
Set CPlane: To Object
10 From the View menu, click Named CPlanes, then click Save to save and name the custom construction
plane.
11 In the Save CPlane dialog box, type Button Top and click OK.
Robert McNeel & Associates θ
Save CPlane
110
Notes:
To loft the button:
1
2
3
4
5
Use Loft to make the button.
Select the curves.
Type P and press Enter.
Make sure the view that has the custom Cplane is the current view, then type 0 (zero) and press Enter.
The loft will end at a point in the middle of the plane, which is the origin of the construction plane.
Press Enter.
6
In the Loft Options dialog box, under Style, choose Loose.
7
8
9
With the Loose option, the control points of the input curves become the control points of the resulting
surface, as opposed to the Normal option, in which the lofted surface is interpolated through the curves.
Turn on control points on the lofted surface.
Select the next ring of points out from the center.
Select one point and use SelV or SelU to select the whole ring of points.
Use the SetPt command (Transform menu: Set Points) to set the points to the same Z-elevation as the point
in the center.
Remember, this elevation is relative to the current construction plane.
Robert McNeel & Associates θ
Set Points
111
Notes:
10 In the Set Points dialog box, check the Z box only and Align to CPlane option.
11 Type in 0 and press Enter.
Aligning a row of points with the central point makes a smooth top on the button.
12 In the Perspective viewport, use the Viewport title right-click menu and select Set CPlane > World Top.
Set CPlane: World Top
Robert McNeel & Associates θ
112
Notes:
To use a patch surface to make the button:
1
2
3
4
5
Use the DupEdge command to duplicate the top edge of the surface.
Move the duplicated curve in the World Z-direction a small amount.
Use Divide to mark off this curve with 50 points as before.
Use the PlaneThroughPt command with the selected points, then delete the points like the previous
exercise.
Use the CPlane command with the Object option to set the construction plane to the planar surface.
6
Make a circle or ellipse centered on the origin of the custom construction plane.
Robert McNeel & Associates θ
113
Notes:
7
Use the Patch command, selecting the top edge of the button and the ellipse or circle.
Patch
The size and vertical position of the
circle/ellipse will affect the shape of the surface.
8 Join the surfaces and use the FilletEdge command to soften the edge.
9 Undo back to before the Patch, move the ellipse down, and repeat the command.
10 In the Patch Surface Options dialog box, check the adjust tangency setting.
The surface is tangent to the edge and concave on the top.
Robert McNeel & Associates θ
114
Notes:
To use a rail revolve surface to make the button:
1
2
3
4
Use the DupEdge command to duplicate the top edge of the surface.
Move the duplicated curve in the World Z-direction a small amount.
Set a Cplane to this curve using Divide and PlaneThroughPt as before.
Use Line with the Vertical option to make a line of any convenient length from the origin of the construction
plane down towards the button surface.
5
Use the Extend command (Curve menu: Extend Curve > By Line) to extend the edge at the seam through
the rectangular surface.
Robert McNeel & Associates θ
115
Notes:
6
Use the Intersect command (Curve menu: Curve From Objects > Intersection) to find the intersection
between the extended line and the rectangular surface.
7
Use the Curve command to draw a curve from the end of the normal line, using the intersection point as the
middle control point, to the end of the seam to use as a profile curve.
8
9
Start the RailRevolve command (Surface menu: Rail Revolve).
Type S and press Enter.
Rail Revolve
Robert McNeel & Associates θ
116
Notes:
10 Select the profile curve (1), the top edge of the surface (2) as the path curve, and the ends of the normal (3
and 4) as the axis for the revolve.
11 RailRevolve does not pay attention to continuity during the surface creation so you will need to match the
new surface to the vertical sides of the button for tangency with the MatchSrf command.
Match Surface
Another option would be to not bother to make the profile curve tangent. With this method you would fillet
the edge to soften it.
Robert McNeel & Associates θ
117
Notes:
Creased surfaces
Often a surface needs to be built with a crease of a particular angle and which may change to another angle or
diminish to zero angle at the other end. The following exercise covers two possible situations.
Exercise 20—Surfaces with a crease
1
2
3
4
The key to following exercise is to get two surfaces that match with different continuity at each end. At one
end we will match the surface with a 10 degree angle and at the other end we will match the surface with
tangency continuity. To accomplish this we will create a dummy surface at the correct angles and use this to
match the lower edge of the upper surface. When the dummy surface is deleted or hidden the crease appears
between the two surfaces we want to keep.
Open the model Crease 01.3dm.
Turn on the Curve and Loft layers.
Make the Loft layer current.
Use the Loft command to make a surface from the three curves.
Loft
Since the loft settings will remain the same as
the last time it was used in the session of
Rhino, you need to make sure the Loft style is
set to Normal and Do not simplify.
Robert McNeel & Associates θ
118
Notes:
5
We are going to make a surface that includes all the curves but has a crease along the middle curve. Use the
middle curve to Split the resulting surface into two pieces.
6
Use the ShrinkTrimmedSrf command (Surface menu: Surface Edit Tools > Shrink Trimmed Surface) on both
surfaces.
When a surface is split or trimmed by an
isocurve, shrinking it will allow the edge to be
an untrimmed edge because the trim
corresponds to the natural untrimmed surface
edge.
By trimming with a curve used in the loft, the
curve is in effect an isocurve.
You can also use the Isocurve option in the split
command when the object to be split is a single
surface.
7
Shrink Trimmed Surface
Hide the lower surface.
To create the dummy surface:
1
2
3
4
5
We will change the top surface by matching it to a new dummy surface.
The dummy surface will be made from one or more line segments along the bottom edge of the top surface
that are set at varying angles to it.
To get a line that is not tangent but is at a given angle from tangent, the easiest method is to use the
transform tools to place the line tangent and then to rotate it by the desired increment.
Change to the Dummy Curve layer.
In the Top viewport draw a line 20 units long.
Start the OrientCrvToEdge command (Transform menu: Orient > Curve To Edge).
Select the line.
Select the lower edge of the surface.
Robert McNeel & Associates θ
Orient Curve to Edge
119
Notes:
6
7
8
Snap to an endpoint of the edge.
Snap to the other endpoint.
Press Enter.
The result should look like the image above
9
In the Perspective viewport, use the Viewport title right-click menu and select Set CPlane >
Perpendicular to curve to set a construction plane perpendicular to the lower edge of the surface, snapping
to the end point of the front line segment.
Robert McNeel & Associates θ
120
Notes:
10 Select the line segment and start the Rotate command. Set the center of rotation at the origin of the new
custom Cplane. Rotate the segment -10 degrees.
The result should be like the image above.
11 Make the Dummy Surface layer current.
12 Use the Sweep1 command (Surface menu: Sweep 1 Rail) to create the dummy surface.
13 Select the lower edge of the upper surface as the rail and the two line segments (1 & 2) as cross-section
curves.
Sweep 1 Rail
Make sure to use the surface edge and not the
original input curve as the rail for the sweep.
Robert McNeel & Associates θ
121
Notes:
14 In the Sweep 1 Rail Options dialog box, under Style, choose Align with surface.
This option causes the cross-section curves to maintain their orientation relative to the surface edge. A
tangent curve (1) will be swept along the edge holding tangency all along unless another shape curve (2)
with a different orientation is encountered, in which case there will be a smooth transition from one to the
next.
To match the surface to the dummy surface:
1
2
Use the MatchSrf command to match the upper surface to the dummy surface.
Select the lower edge of the upper surface.
3
Select the upper edge of the dummy surface.
Robert McNeel & Associates θ
122
Notes:
4
In the Match Surface dialog box, choose Tangency and check Match edges by closest point.
This will keep distortion to a minimum.
5
6
Show the lower (red) surface and hide the (blue) dummy surface.
Join the lower surface with the upper surface.
The crease fades smoothly from one end to the other of the polysurface. If more control is needed over the
angles of the crease, more segments can be placed to create the dummy surface.
Because the surfaces are untrimmed, you have the option to merge the surfaces back into one surface.
Robert McNeel & Associates θ
123
Notes:
Exercise 21—Surfaces with a crease (Part 2)
In this exercise there is no convenient relationship between the crease curve and the surface. While similar to
the other example, the upper surface is made with a two rail sweep.
To create a crease with trimmed surfaces:
1
2
Open the model Crease 02.3dm.
Use the Line command (Curve menu: Line > Single Line) to draw a single line anywhere in the viewport.
We will use this line to make a dummy surface.
3
Use the OrientCrvToEdge command (Transform menu: Orient > Curve to Edge) to move the curve for the
dummy surface to the upper edge of the lower surface.
Place a line at each end of the edge and somewhere in the middle of the edge.
4
If the line flips over at either end, place it as
close to the end as you can and move it later.
The line is tangent to the surface.
Robert McNeel & Associates θ
124
Notes:
5
Move each line segment by moving its upper end to the lower end of the same segment.
6
Use the CPlane command (View menu: Set CPlane > Perpendicular to Curve) to set the construction plane to
align with the line at the left of the surface.
7
Use the Rotate command (Transform menu: Rotate) to rotate the line 15 degrees (counterclockwise).
Robert McNeel & Associates θ
125
Notes:
8
Repeat these steps for the line in the middle of the surface.
To make the dummy surface:
1
2
Use the Sweep1 command to create the dummy surface.
Select the upper edge of the lower surface as the rail and the three line segments as cross-section curves.
Use the Align with surface style for the sweep.
3
Hide the original surface.
Robert McNeel & Associates θ
126
Notes:
4
Use the Sweep2 command to make the upper surface.
Choose the upper edge of the dummy surface
as a rail and the long curve at the top as the
other rail.
Choose the curves at both ends as the crosssection curves.
5
6
7
8
In the Sweep 2 Rails Options dialog box, for the Rail continuity of edge A, choose Tangency.
Hide or Delete the dummy surface.
Use Show or Show Selected (Edit menu>Visibility>Show selected) to show the original lower surface.
Join the lower surface with the upper surface.
Robert McNeel & Associates θ
127
Notes:
Curve fairing to control surface shapes
Fairing is a technique to simplify curves while improving their curvature graphs and keeping their shape within
tolerance. It is especially important to fair curves that are generated from digitized data, intersections, extracted
isocurves, or curves from two views.
Generally curves that are single-span curves work better for this process. A single span curve is a curve that has
one more control point than the degree. Examples are a degree 3 curve with 4 control points, a degree 5 curve
with 6 control points, or a degree 7 curve with 8 control points.
To make a surface with fair curves:
1
Open the model Fair Curves.3dm.
2
Select the curves and use the Loft command (Surface menu: Loft) to make a surface.
The surface is very complex. It has too many isocurves for the shape, because the knot structures of the
curves are very different.
Robert McNeel & Associates θ
Loft
128
Notes:
3
Select the lofted surface and start the CurvatureAnalysis command (Analyze menu> Surface>Curvature
analysis).
This creates a so called “False color” display using same type of analysis meshes as the Zebra command.
The amount of curvature is mapped to a range of colors allowing you to analyze for areas of abruptly
changing curvature or flat spots.
Choose Mean from the style drop down. This style is useful for showing discontinuities in the curvature—flat
spots and dents.
Choose AutoRange and adjust the analysis mesh to have at least 5000 minimum grid quads to ensure a
smooth display of the color range.
Note the streaky and inconsistent color range on the surface. This indicates abrupt changes in
the surface.
4
5
Undo the loft.
Change to the Tangency Direction layer and turn on the control points on the original curves.
Robert McNeel & Associates θ
129
Notes:
6
To maintain the tangency direction of the originals, make a line tangent to the originals from the end points
and coming back towards the curve, any length.
Use the Tab lock and snap to the second point to extend the line.
You can also use the Line command with the Tangent option. After snapping to the end point of the curve
use the FromFirstPoint option type F and press Enter to lock the end of the line and drag the line out
tangent.
The length is arbitrary but make the lines long enough to cross one another.
Robert McNeel & Associates θ
130
Notes:
7
8
Change to Rebuilt Curves layer, and Lock the Tangency Direction layer
Use the Rebuild command (Edit menu: Rebuild) to rebuild the curve.
Note: Although there is a Rebuild option in the Loft command, rebuilding the curves before lofting them gives
you control over the degree of the curves as well as the number of control points.
9
Rebuild
In the Rebuild Curve dialog box, change the Degree to 5 and the Point Count to 6 points. Uncheck Delete
input, check Create new curve on Current layer.
Click the Preview button. Notice how much the curves deviate from the originals.
Note: This makes the curves into single-span curves. Single-span curves are Bézier curves. A single-span curve is
a curve that has degree +1 control points. While this is not necessary to get high quality surfaces, it
produces predictable results.
10 Lock the Original Curves layer.
11 Select one curve, turn on the points and the curvature graph.
Robert McNeel & Associates θ
131
Notes:
12 Fair the curve by adjusting points until it matches the original curve closely enough.
Start by moving the second point of the rebuilt curve onto the tangent line. Use the Near object snap to drag
along the tangent line.
13 Check the curvature graph to make sure the curve has smooth transitions.
The curves are fair when the points are adjusted so the rebuilt curves match the original locked curves
closely, with good graphs.
14 Fair the other curves the same way.
Robert McNeel & Associates θ
132
Notes:
15 Loft the new curves.
The shape and quality of the surface has very few isocurves but it is very close to the shape of the
first surface.
16 Analyze the surface with CurvatureAnalysis.
Note the smooth transitions in the false color display, indicating smooth curvature transitions in the surface.
Robert McNeel & Associates θ
133
Notes:
7
Use Background Bitmaps
This exercise describes the steps in creating a case for a handset, using bitmaps as templates. In this exercise we
will focus on making curves from bitmaps images and using fairing techniques on the curves before making the
surfaces.
We will begin by taking scanned sketches and placing them in three different viewports. The three hand-drawn
images need to be placed in their respective viewports and scaled appropriately so that they match each other.
You can align images more easily if they have been aligned and cropped so that they share the same length in
pixels. It helps to darken and slightly reduce the contrast of images that have a lot of bright white in them. This
allows a greater range of colors to be seen against them when tracing them in Rhino.
Exercise 22—Handset
1
2
3
Open the model Handset.3dm.
From the Tools menu, click Toolbar Layout.
In the Toolbars dialog box, check Background Bitmap to open the toolbar, then close the dialog box.
Use the toolbar buttons for the next part of the exercise.
The toolbar can also be accessed by flying out the Viewport layout toolbar from the Standard toolbar
across the top of the viewports.
Robert McNeel & Associates θ
135
Notes:
To place background bitmaps:
We will begin by making reference geometry to help in placing the bitmaps.
1 Make a horizontal line, from both sides of the origin of the Top viewport, 150 mm long.
2
3
Toggle the grid off in the viewports that you are using to place the bitmaps by pressing the F7 key.
This will make it much easier to see the bitmap. The grid is displayed in the illustrations for reference only.
In the Front viewport, use the BackgroundBitmap command with the Place option (View menu:
Background Bitmap > Place) to place the HandsetElevation.bmp.
Place Background Bitmap
Robert McNeel & Associates θ
136
Notes:
4
Use the BackgroundBitmap command with the Align option (View menu: Background Bitmap > Align) to
align the ends of the handset to the line. The command line prompts will tell you the steps to follow.
Align Background Bitmap
First you pick two points on the bitmap—you can zoom way in to pick a point very accurately at
this stage.
Pick the points at either extremity of the long shape.
Next you pick two points in space to which you would like to have the image points just selected
to correspond—snap to the end points of the 150 mm line.
5
6
Change the Right viewport to a Bottom view.
Use the same technique to place and align the HandsetBottom.bmp in the Bottom viewport.
Robert McNeel & Associates θ
137
Notes:
To build the case:
1
In the Front and Bottom viewports, trace the curves you need to define the form of the case. Since the
bottom view of the object is symmetrical you can make one curve.
The most useful tool for tracing
freeform curves is to use a
control point curve.
The front view curves describing the top and bottom edges of the case should extend on the right
past the form in the background image approximately the same amount as the corresponding
bottom view curves do. You can draw them too long and trim both bottom view and front view
edge curves off with a single cutting plane.
Now draw the curve in the Front viewport that defines the parting line separating the top and
bottom halves of the case. This curve is the front view of the plan view’s edge curves. It should be
extended to the right the same distance as the other edge curves.
2
In the Bottom viewport, select the parting line curve and the outline curve.
Place only the fewest points that
will accurately describe the
curve, but do not to fall into the
trap of trying to be 100 %
accurate with every point
placement. With some
experience you will be able to
place about the right number of
points in about the right places
and then point edit the curve into
its final shape.
In this example, the 2d curves
can all be drawn quite accurately
with a degree 3 curve using 5 or
at most 6 control points.
Remember to pay attention to the
placement of the second points
of the curves to maintain
tangency across the pointed end
of the object.
Robert McNeel & Associates θ
138
Notes:
3
Use the Crv2View command (Curve menu: Curve From 2 Views) to create a curve based on the selected
curves.
A 3-D curve is created.
4
Hide or Lock the two original curves.
Now there are three curves.
Robert McNeel & Associates θ
139
Notes:
5
Turn on the control points for the curves.
Note the number of control points and the
spacing. This is an example of curves that need
to be faired before you can create a good
surface from them.
6
Fair the curves, using the same technique as in the previous exercise.
Robert McNeel & Associates θ
140
Notes:
7
Mirror the 3-D curve for the other side.
The macros ! Mirror 0 1,0,0 and ! Mirror 0 0,1,0 are very useful for accomplishing this quickly if they are
assigned to a command alias and if the geometry is symmetrical about the x or y axis.
8
Loft the faired curves.
Note the quality of the surface and how few isocurves there are.
Robert McNeel & Associates θ
141
Notes:
8
An Approach to Modeling
A common question that occurs when modeling, is “Where do I start?” In this section we will discuss various
approaches to the modeling process.
There are two things to consider before your begin modeling: if reflections, fluid flow, air flow, or the ability to
edit using control points are important in the finished model, you will want to begin your models with geometry
that consists of cubic (degree 3) or quintic (degree 5) curves. If these are not important, you can use a
combination of linear (degree 1), quadratic (degree 2), cubic or quintic curves.
Start with simple shapes, the details can be added later. Begin by creating layers for the different parts. This will
help separate the parts for visualization, and help with matching the parts as you go.
We will review different products to try to determine which kind of surfaces are most important and some
approaches to modeling the product.
Exercise 23—Cutout
This exercise shows an approach to making a cutout surface which blends smoothly and seamlessly into an
existing curved surface. The new surface has an arbitrary relationship to the existing surface so the general
strategy can be used in other cases.
1
Open the model Scoop.3dm.
Robert McNeel & Associates θ
143
Notes:
2
Make the Cut-out Curves layer current, turn on the Original Surface layer, turn off the Completed Scoop
layer.
For this exercise, we have
created additional models for
each stage of the exercise.
The models are for reference and
include notes to explain the
procedure for the steps in that
stage of the exercise.
There will be a note at each
stage to indicate which model to
open if needed.
3
4
5
In the Top viewport, select the curves.
Start the Project command (Curve menu: Curve From Objects > Project).
Select the surface.
Project
The curves will be projected onto the surface.
6
7
Start the ExtendCrvOnSrf command (Curve menu: Extend Curve > Curve on Surface).
Select the outer curve on the surface.
Robert McNeel & Associates θ
Extend Curve On Surface
144
Notes:
8
Select the surface.
The ends of the curve are extended to the edge
of the surface.
9
Use the Trim command (Edit menu: Trim) to trim the curves with each other.
10 Join the three small curves into one.
11 Copy InPlace the surface and hide the copy.
Robert McNeel & Associates θ
145
Notes:
12 Use the joined curve to trim away the part of the surface which is outside the curve.
This leaves a small trapezoidal surface. This surface is a dummy used to match a new surface to and will be
deleted later.
Open Scoop 001.3dm if needed.
13 Use the ShrinkTrimmedSrf command (Surface menu: Edit Tools > Shrink Trimmed Surface) to make this
surface easier to see since it will reset the isocurves to the new surface size.
Robert McNeel & Associates θ
146
Notes:
To make the curves for the floor of the scoop:
1
Next we will make a surface for the bottom of the cutout. The cutout is rounded at one end, but we will build
a rectangular surface and trim it to be round at one end. This approach allows for a much lighter, more easily
controlled surface than trying to hit the edges exactly while building the surface.
In this part, we will make one curve with as few points as possible that shows the shape of the part that will
become the bottom of the scoop. When making the curve try to look at it from various views while you work.
Use a degree 5 curve and six points for a very smooth curve. Check the curve with the curvature graph to get
a nice fair curve.
Use the Curve command to draw a control point curve in the Front view. On the Status bar turn Planar
mode on. This will keep the curve in a single plane for the moment.
Snap the first point of the curve to the corner of
the small dummy surface in any convenient
view using the End Osnap.
Robert McNeel & Associates θ
Open Scoop 002.3dm if needed.
Then switch to the Front view to continue
drawing. Draw the curve approximately tangent
to the edge of the dummy surface and finish it
lower, defining the shape of the floor of the
scoop.
147
Notes:
2
Adjust the curve with point editing to get the right shape in the Top view.
Make sure to move the points only in the Y direction (Ortho will help), so that the shape in the
Front view will not be altered.
Make the curve approximate the outermost of the original curves and extend somewhat past the
rounded end.
3
Use the Match command (Curve menu: Curve Edit Tools > Match) to match the curve with curvature
continuity to the edge of the dummy surface.
Edit the curve further if needed but be sure to
use Match again if you have moved any of the
first three points in the curve.
Robert McNeel & Associates θ
148
Notes:
4
Copy the curve to the other edge.
5
Adjust the curves by moving the control points until they look the way you want then match the curve to the
edge of the dummy surface.
If matching makes the curve distort too much add a knot and try again. EndBulge and further
point editing may be needed.
Robert McNeel & Associates θ
149
Notes:
To Create the floor surface of the scoop:
There are a few surfacing techniques that can be used to create the surface. A 2 Rail Sweep would be one
obvious choice, using the new curves as rails and the edge of the dummy surface as the cross section. The
advantage of this is that other cross-sections can be used to define the floor shape if desired. Since the rails
are G2 to the dummy surface (Matched in the last sequence of steps) the surface will be very close to G2 to
the dummy surface when created. The MatchSrf command could fix any discontinuity, if needed. This is a
good way to go and you may wish to try it now.
1
Another approach is to make a lofted surface between the two curves. The surface will need adjustment to
match to the dummy surface and will provide the opportunity to explore some options in the MatchSrf
command so we will outline this method below.
Use the Loft command (Surface menu: Loft) to create the surface between the two curves.
Because the lofted surface is flat, there will be a slight gap at the edge of the dummy surface.
Robert McNeel & Associates θ
150
Notes:
2
Use the MatchSrf command (Surface menu: Surface Edit Tools > Match) to match the lofted surface to the
edge of the dummy surface for curvature.
Use the Preview button to see how the match will look.
You may notice that the matched surface pulls
around quite drastically to be perpendicular to
the target edge.
If so, click the Options button and set the Isocurve direction adjustment to Preserve isocurve
direction. Exit options and try the Preview again.
The surface should now match with much less distortion.
Robert McNeel & Associates θ
151
Notes:
To make the sides of the cutout:
1
2
3
4
5
To make the sides of the cutout, we will extrude the projected outline with 10 degrees of draft and trim it with
the lofted surface.
Select the projected curve.
Use the ExtrudeCrv command (Surface menu: Extrude curve >Tapered) to extrude the projected curve.
Click DraftAngle.
Type –10 and press Enter.
Pull the surface until it fully intersects with the bottom surface, but no more, and pick.
If you extrude the surface too far, you might get a polysurface instead of a single surface. If this happens try
the extrude again, but don’t pull so far. If you can’t pull it far enough to penetrate the floor without making a
polysurface, extrude it a short distance instead. Then use the ExtendSrf command to extend it through the
floor surface.
Open Scoop 003.3dm if needed.
Extrude
The extruded surface is a very dense surface.
6
Use the FitSrf command to simplify the surface.
A Fitting tolerance of 0.001 with DeleteInput=Yes, ReTrim=Yes, UDegree=3, and VDegree=3 should work well.
Robert McNeel & Associates θ
152
Notes:
To create the fillets:
1
2
3
4
5
6
7
8
9
Now the surfaces are ready to be filleted.
Show the main surface.
Use the FilletSrf command (Surface menu: Fillet Surface) to make the fillets between the bottom surface and
the sides.
Type 5 and press Enter.
Click Extend to change the setting to No.
Click Trim.
Click No.
At Select first surface to fillet ( Radius=5 Extend=No Trim=No ) prompt, pick the bottom surface.
Pick the side surface near the same spot.
Repeat this for the side surface and the original surface.
Fillet Surface
The two fillets cross each other. We will trim
them both back to their intersection points.
Trimming back the fillet surfaces:
1
Both of the fillet surfaces are tangent to the tapered side of the scoop and where the fillets cross they are
tangent to each other.
If we trim the ends of the fillets to a plane, then the resulting trimmed edges will be tangent to each other.
Trimming these surfaces will be helpful when creating the final surfaces that blend the fillets out between the
scoop and main surfaces.
To create the plane, first make circles with the AroundCurve option around one edge of the fillet surfaces,
then make planar surfaces from the circles. It may be easier if you hide all but the fillet surfaces for this
sequence.
Select the fillets and use the Invert Hide button in the visibility toolbar to isolate them.
Robert McNeel & Associates θ
Open Scoop 004.3dm if needed.
153
Notes:
2
3
4
Start the Circle command, and use the AroundCurve option. Set the Int osnap only.
The AroundCurve option forces the circle command to look for curves, including edge curves, to draw the
circle around.
Notice as you move the cursor close to the edges of the fillets a blip appears on the edge curve indicating the
location available for the center of the circle. Where there is an intersection of two or more curves it becomes
difficult to know which of the curves will actually be the source for the circle's center. If you try to pick the
intersection at this point it will fail, because it has two choices. You can force it to choose one or the other
edge curve by using the OnCrv object snap.
Use the OnCrv osnap (Tools menu: Object snaps >On Object > On Curve).
Click on the lower edge of the upper surface.
Now, when you encounter the Int osnap you can be sure that the circle will be drawn around this
edge curve and not the one that intersects it.
5
Draw the circle out well past the width of the fillet surfaces.
Robert McNeel & Associates θ
154
Notes:
6
Use the PlanarSrf command (Surface menu: Planar Curves) to create a circular surface at the intersection
point.
7
8
Repeat these steps for the other intersection.
Trim the fillets to the surfaces.
Circle: Around Curve
Robert McNeel & Associates θ
155
Notes:
Trimming the sides of the scoop:
1
2
You can use the trimmed fillets to trim back the side surface of the scoop.
Use Show Selected to show the tapered side surface.
Use the fillet surfaces as trimming objects to trim the excess from the side surface.
It is often much faster to trim
with curves than to use surfaces,
especially if the surfaces are
tangent to the object to be
trimmed, as is the case with
fillets.
Duplicate the two edges that are
in contact with the side surface to
use as trimming objects if you
have a problem.
Trimming the main and floor surfaces:
The next task is to extend the edges of the fillets so that the main surface and the floor surface can be
trimmed back. The inner, or lower, edge of the lower fillet will be extended off the end of the floor surface
and the outer, or upper, edge of the upper fillet will be extended off past the end of the opening of the scoop
as well. The extended curves will be projected onto the respective surfaces and used to trim them.
1 In the Top view, use the Extend command with the Type=Smooth option to extend both bottom ends of
the lower fillet edge past the front of the floor surface.
Robert McNeel & Associates θ
Open Scoop 005.3dm if needed.
156
Notes:
2
Use these curves, still in the Top view, to Trim the outer edges from the floor surface.
3
Use Extend to extend the outer edges of the upper fillet past the end of the floor surface.
Note that in the Perspective view these extended curves are off in space at their outer ends.
4
5
6
ShowSelected the main surface if it is hidden.
Project the curves onto the main surface from the Top view.
ShowSelected or turn on the layer for the original curves and Project the line segment onto the main
surface.
Robert McNeel & Associates θ
157
Notes:
7
Trim the projected curves with one another so that they form a closed loop.
8
Use the closed curves to Trim a hole in the main surface.
Robert McNeel & Associates θ
158
Notes:
Set up the curves to create the surfaces.
1
2
3
We are now nearly ready to create the surfaces. As you can see there are nice rectangular gaps in the
surfaces, we just need to arrange the curves and edges surrounding the gaps for use in making a 2-Rail
Sweep or a surface from a Curve Network. Because one end of each open rectangle is bounded by the two
tangent fillet edges, we need to create a single curve there to use as input. We'll duplicate the four edges and
join them into two s-shaped curves. The other end of each rectangle is bounded by a portion of the end of the
hole in the main surface. we'll split up that long edge into segments that correspond exactly to the ends of
the rectangular openings.
Use DupEdge to create curves at the trimmed edges of the fillets.
Open Scoop 006.3dm if needed.
Join these four edges into two curves.
Use the SplitEdge command (Analyze menu: Edge Tools > Split Edge) and the End osnap to split the
straight edge on the trimmed hole in the main surface to the end points of the floor surface's edge.
Split Edge
Robert McNeel & Associates θ
159
Notes:
4
Use the SplitEdge command to split the long edges at the end points of the fillet edges.
This will help NetworkSrf find a solution more quickly.
5
Use the Sweep2 command with Rail continuity=Tangency or the NetworkSrf command to create the last
two surfaces.
The surfaces start with the s-shaped curves
that you duplicated and end with a flat line at
the split edges.
6
7
Join the cutout surfaces and then trim a hole at the bottom.
Mirror and Trim to get the other scoop.
Robert McNeel & Associates θ
Open Scoop 007.3dm if needed.
160
Notes:
Extra cross section curves:
The larger of the two surfaces may benefit from extra cross section curves. To add cross-sections, use the
Blend command to make tangent curves approximately one-third and two-thirds of the way along the edges
of the opening. Use these curves as additional input for a network surface.
1
2
3
4
Turn on the Point osnap.
Start the Blend command (Curve menu: Blend Curves).
At the command line, set the Continuity=Tangency, then select the Perpendicular option.
Select one of the long edges of the rectangular opening and track the cursor to approximately one-third of the
way along the open edge.
5
Again select the Perpendicular option for the other end of the blend curve and select the edge opposite the
first one as the curve to blend to.
Robert McNeel & Associates θ
Blend Curves
161
Notes:
6
Bring the cursor back across to the area of the pick along the first edge until the Point osnap flag lights up.
The cursor will snap across to the current edge with a white tracking line. Click the mouse at this point.
The blend curve will be placed straight across the opening.
7
8
Make a second curve the same way about two-thirds of the way along the same edges.
Remember to select Perpendicular at each pick.
Use the NetworkSrf command to create the surface. Remember to include the new curves in the selection.
Robert McNeel & Associates θ
162
Notes:
9
Use 2-D Drawings
Use 2-D drawings as part of a model
Often you are asked to take an existing design from a 2-D graphics package and include it as part of a Rhino
model. One of the tasks to complete will include moving and positioning the graphic onto the model.
In the following exercise we will use a logo design created in Adobe Illustrator to make a 3-D logo on a model.
Exercise 24—Importing an Adobe Illustrator file
In this exercise we will make a custom construction plane, import an Illustrator file, and place a logo on some
surfaces.
1
Open the model Air Cleaner.3dm.
To import a file:
1
2
Start the Import command (File menu: Import).
Change the Files of type to PDF Files (*.pdf; *.ai), and choose the AirOne_Logo.ai to import.
Robert McNeel & Associates θ
163
Notes:
3
In the AI Import Options dialog box, click OK.
The logo is selected and located on the Top construction plane in the Default layer.
4
While the imported geometry is still selected, use the Group command to group the various curves together.
This makes it much easier to select all of the curves and not leave any behind in the following transform
steps.
Start the Layer command.
Turn off the Logo layer.
Right click on the Logo layer, then click Copy Objects to Layer to make a copy of the logo on the Logo
layer.
We will use this copy later for another part of the exercise.
Turn off all the layers except Default and Top Surface.
5
6
7
8
Robert McNeel & Associates θ
164
Notes:
To create the custom construction plane:
1
We need to set a construction plane to the flat surface. The Cplane command will allow us to do this but the X
and Y directions of the new custom CPlane will be mapped to the U and V directions of the target surface
respectively and the Cplane Z direction will be mapped to the surface normal. The Dir command will tell you
how the U and V direction are pointing on the surface, and allow you to change the directions of each.
Select the flat disc shaped surface, then from the Analyze menu, select Direction (Analyze menu:
Direction).
This displays the current surface normal direction and the U/V directions. It is important to know normal
direction and the U and V directions of the surface.
Direction
The white arrows show the surface normals. A
cursor with a red and green arrow appears
when you move over the selected surface.
The red arrow indicates the U direction and the
green arrow indicates the V direction.
2
At the command line there are various options for changing the directions of the surface. You can click on
these to change the surface directions. The cursor and surface normals will update accordingly.
When all changes are made, press Enter to accept.
The goal is to have the U, V and normal arrows
as in this image
In this way, the new Cplane will map to the
surface accordingly and the geometry can be
mapped to the Cplane predictably.
Robert McNeel & Associates θ
165
Notes:
3
In the Perspective viewport, use the Cplane command with the Object option (View menu: Set CPlane > To
Object) or (Viewport title right click menu: Set Cplane > To Object) to set the Cplane to the surface.
The X and Y axes are parallel to the U and V of
the surface as you set them in the previous
step.
4
You may want to save the new construction plane with the NamedCPlane command (Viewport title right click
menu: Set Cplane > Named Cplanes) to make it easy to retrieve later.
To mapping the logo curves to the new Cplane:
1
The command we will use to move the logo to the flat disk shaped surface uses the position of the object
relative to a construction plane.
Select the curves in the Top viewport. Make sure the Top viewport is active, then start the RemapCPlane
command (Transform menu: Orient > Remap To CPlane).
This command depends upon the active construction planes at each stage, so it is important to pick in the
correct viewports.
Robert McNeel & Associates θ
Remap To CPlane
166
Notes:
2
Click in the Perspective viewport with the custom Cplane.
You could use the Copy=Yes option in this command so that a copy is remapped instead of the original.
When Copy=Yes is active, each click in a viewport results in a copy being placed until the command is
ended with Enter or Esc.
The logo is positioned in the same relative position on the custom construction plane as it was in
the active viewport.
3
Rotate, Move, or Scale the logo to a new position.
For an accurate view of the surface and the curves you may want to use the Plan command in the
Perspective viewport. This sets the view to a parallel projection looking straight on at the plane.
Robert McNeel & Associates θ
167
Notes:
4
Use the Extrude command (Solid menu: Extrude Planar Curve > Straight) with the BothSides option to
make the text 3-D. The extrusion distance should be 2 mm.
5
Use the BooleanDifference command (Solid menu: Difference) to recess the text into the surface.
Robert McNeel & Associates θ
168
Notes:
To place the logo on an irregularly shaped surface:
1
2
In this part of the exercise, we will use the copy of the logo that is on the Logo layer and position it on the
cutout surface. This surface is not flat so we will use a different transform tool, Flow along curve, to move it
and bend it along the surface.
Flow maps the control points of an object from one curve to another. The relationship of the points to the first
curve is transferred to the second curve. If one of the curves has a different length than the geometry being
flowed will stretch or compress accordingly. In order to eliminate this stretching or compressing the original
curve and the target curve need to have the same length.
Start the Layer command and make the Cutout layer the current layer. Then, turn off all the layers except
Cutout and Logo.
First we need to extract a curve from the target surface. Use the ExtractIsocurve command (Curve menu:
Curve From Objects > Extract Isocurve) and select an isocurve in the long direction from the surface, as close
to the middle of the surface as possible by eye.
Extract Isocurve
We will use this curve to align the logo.
Robert McNeel & Associates θ
169
Notes:
3
4
5
While this curve is selected, use the Length command (Analyze menu: Length) to get its exact length. This
will be printed out in the command line.
In the Top viewport, make a line of the same length as the extracted isocurve.
Select the logo curves in the Top viewport and use the BoundingBox command (Analyze menu: Bounding
box) to make a 2D rectangle around the curves.
For the Coordinate system, use either the World or Cplane options, they are the same in this view.
Robert McNeel & Associates θ
Bounding box
170
Notes:
6
Move the line from its midpoint to the center of the bounding box using the Mid and Cen osnap.
A bounding box is a convenient way to find the
center of a group of curves consistently.
7
8
9
Select the logo curves and start the Flow command (Transform menu: Flow along Curve).
Select the line.
Select the extracted isocurve.
Flow along curve
It’s good practice to use the
Copy option in Flow to leave a
copy of the original curves in
place.
The logo curves are mapped from the line to the curve. Note that the command pays attention to
which end of each curve is selected to map the logo curves.
10 If the logo is too large for the target surface, you may need to Undo the command, Scale the curves in the
Top viewport, and Flow them again.
Robert McNeel & Associates θ
171
Notes:
Splitting the surfaces:
1
If you look closely at the mapped curves in the Perspective view, you will see that they have been mapped to
the curve but are still not really on the surface. However, they are close enough that pulling them onto the
surface will not visibly distort them.
Select the curves that were flowed along the isocurve and start the Pull command (Curve menu: Curve From
Objects > Pullback).
Pull moves curves or points back to the selected surface in the direction of the surface normal.
Pullback
The original curves (1) are pulled back (2) to the
surface in the direction of the surface normal
(3).
2
3
Select the surface and start the Split command (Edit menu: Split). Select all the pulled curves as the cutting
objects.
In this case you might want to Shrink the surfaces since currently each of the split pieces carries the
underlying surface for the entire surface, even the tiniest little segments.
To raise the logo lettering
1
Select the logo surfaces.
Do not pick the parts of the surfaces that are inside the letters (A, O, and N).
Robert McNeel & Associates θ
172
Notes:
2
3
Start the OffsetSrf command (Surface menu: Offset Surface). Choose the Solid option to fill in the surfaces
between the original and offset edges.
Move the cursor over the surfaces and click on any that do not have the normal arrows pointing up to flip the
direction. The arrows indicate the direction of the offset.
Set the distance to 1, and press Enter to make the solids.
The surfaces could also be extruded into solids using the ExtrudeSrf command (Solid menu: Extrude Surface
> Straight).
Offset Surface
The logo is offset with the sides filled in.
4
5
The offset solids may need to be joined to the original surface but being closed solids they cannot be joined to
the surface in their present form.
Use the ExtractSrf command (Solid menu: Extract Surface) to remove the lower faces from the offset logo,
then delete them.
Use the Join command (Edit menu: Join) to join the logo surfaces with the original surfaces.
Robert McNeel & Associates θ
173
Notes:
Make a model from a 2-D drawing
One of the more difficult modeling tasks in modeling is to interpret a set of 2-D views into a 3-D model. Very
often the drawings are precise in some areas and inexact in areas where complex surface transitions must take
place in three dimensions.
It is best to consult directly with the designer to clarify difficult areas, but this is not always possible. Usually
there are discrepancies between the views.
If there is no physical model available as reference, some decisions must be made along the way about the best
way to interpret the sketch or drawing. For example, you will have to consider which view to consider the most
accurate for a given feature.
In the following exercise we will explore some strategies to create a blow-molded plastic bottle from a set of 2-D
drawings. In this exercise we have a control drawing showing three views of the bottle. It is roughly dimensioned,
but we need to hold to the designer’s curves wherever possible.
We will only have time to finish the first stage of this model in class. We will complete the bottle surfaces, but the
details will be left out. Included in the models folder is a finished bottle for your review.
Exercise 25—Making a detergent bottle
1
Open the model Detergent Bottle.3dm.
2
In the Top viewport, window select the objects that make the top view (lower left) including the dimensions
of the 2-D drawing.
Use the Group command to group the selected objects (Edit menu: Groups > Group).
Repeat the previous steps to group the objects for the front view (upper left) and the right view (upper right).
Each of the views is a separate group of objects.
3
4
Robert McNeel & Associates θ
174
Notes:
To orient the views:
1
2
3
4
5
6
7
8
Select the top view group.
Use the ChangeLayer command (Edit menu: Layers > Change Object Layer) to change the layer to the 3D
Template Top layer.
In the Top viewport, use the Move command to move the center of the circles to 0,0.
Select the front view group.
Use the ChangeLayer command to change the layer to the 3D Template Front layer.
In the Top viewport, use the Move command to move the intersection of the centerline and the horizontal
line at the bottom to 0,0.
While the front view group is still selected, start the RemapCPlane command (Transform menu: Orient >
Remap to CPlane) in the Top viewport.
Click in the Front viewport.
The view is oriented in 3-D space.
9 In the Top or Perspective viewport, select the right view group.
10 Use the ChangeLayer command to change the layer to the 3D Template Right layer.
Robert McNeel & Associates θ
175
Notes:
11 In the Top viewport, use the Move command to move the intersection of the centerline and the horizontal
line at the bottom to 0,0.
12 Use RemapCPlane to map the Right view curves to the Right CPlane.
The view is oriented in 3-D space.
Frequently 2-D curves for design control drawings will not be as carefully constructed as you like for making
accurate geometry. Before building 3-D geometry from the 2-D curves, check the curves and correct any
errors that can be found.
Robert McNeel & Associates θ
176
Notes:
To create the 3-D curves:
The inset part of the bottle will be cut into the surface later. For the moment we just need to build the outer
surfaces. The fillets at the top and bottom indicated in the curves can be left out of the initial surface building
and added in as a separate operation. We'll need to extend or redraw the edge curves to bypass the fillets
and meet at hard corners before making the surfaces.
There are several surfacing tools that could be used to build the initial surfaces: A 2-Rail Sweep or a
Surface from Network of Curves are the obvious choices.
Network surfaces do not pay any attention to the curve structure, only the shape. All curves are refit and the
resulting surface has its own point structure.
Other commands including the Sweep tools, lofting and edge surfaces do pay attention to the curve structure
in at least one direction. In these cases it often pays to use matched curves as cross sections. So the choice
of surfacing tools may well determine the way in which the actual input curves are created.
1
2
Select the groups you made in the previous step, use the Ungroup command (Edit menu: Groups >
Ungroup) to ungroup them.
Select the curves from each 2d template view that define the outer surface and Copy them to the 3D Curves
layer.
Since the bottle is symmetrical on both sides of
the X-axis, you will only need to copy the
curves on one side. They will be mirrored later.
3
Use OneLayerOn to set the 3d Curves layer.
Robert McNeel & Associates θ
177
Notes:
4
Move the curve defining the top surface of the bottle to the same height as the top of the vertical curves. Use
SetPt or Move with the Vertical option in the Perspective view.
5
The vertical curves now can be extended past the fillet curves so that they meet the top and bottom curves
exactly on the end points of these curves.
One way is to extend the vertical curves using Extend with Type = Smooth. Snap to the Endpoints of the
top curve, and to the Endpoints of the base curve at the bottom.
Extending the curves in this way will add complexity to the curves. If it is important to keep the curves simple
and well matched, it may be better instead to adjust the points on the existing curves to extend them. Undo
the Extend operation and instead point edit the curves directly.
You can make a duplicate set of curves and edit one of each leaving the original in place as a template.
6
Robert McNeel & Associates θ
178
Notes:
7
Mirror the base, top and side curve visible from the right view to the other side.
The result should be a set of 8 curves that
define the surface.
Most of these curves are essentially the original
curves from the 2D drawings but rearranged in
3D.
8
Join the base curves and the top curves into a closed loop.
The curves are set up for a surface from a curve
network or a two-rail sweep.
Robert McNeel & Associates θ
179
Notes:
To make a surface for the bottle with a sweep:
1
2
From the drawing these are the only curves we have available to define the shape, so we will use these
curves directly to create the surface.
Change to the Surfaces layer.
Window select the curves and first try Sweep2 to make a surface then Shade the viewport.
Move this surface to the side for the moment.
Notice the shape gets severely out of control at
the rounded side of the bottle.
3
While it is possible to rearrange or add curves to make the Sweep2 work better, it is worth checking how a
surface from a Curve Network will work with the same set of curves.
Select all of the curves, again, the use the NetworkSrf command to create the surface.
The Curve Network surface tool handles this set
of curves much more gracefully.
Shade the viewport to see this more clearly.
On your own:
Make the inset surface and the handle. Fillet the edges where indicated in the 2-D drawing. Included in the model
directory is a finished bottle for your review.
Robert McNeel & Associates θ
180
Notes:
10
Surface Analysis
Exercise 26—Surface Analysis
The file, Surface Analysis.3dm, has a set of curves you will recognize from the detergent bottle exercise. Instead
of making a network surface from these curves as we did before, we'll make three much simpler surfaces per side
and use the surface matching and analysis tools to clean them up. You may want to compare the results with the
network surface as well.
To make the surfaces for the bottle from edge curves:
1
The vertical curves have been matched so that they all have the same point count and structure. They are
edited copies of the same curve. The top and bottom curves need to be split up to make four sided surfaces
with the vertical curves.
We will need an extra vertical curve to help the shape at the back.
Split one of the bottom curves with the Point option at the Knot that is on the right side of the curve.
Splitting right on the knot lets the resulting
curve segments keep a uniform knot
distribution.
Knot
For the edge surfaces we are going to build this
is useful as the surfaces can be kept simpler.
Also, split the same curve with the vertical
curve that intersects it.
Robert McNeel & Associates θ
181
Notes:
2. Copy the back curve and place it at the endpoint of the split bottom curve where the knot was.
2
Drag the top point of this curve to the top curve with the Near osnap. Place it approximately two-thirds of the
way between the back profile curve and the side profile curve.
Also, adjust the second point from the top. Move it upward and inward slightly as illustrated below.
This will give a little more control over the surface, especially at the top edge.
Robert McNeel & Associates θ
182
Notes:
3
Split the top curve and the base curve with the vertical curves.
4
In order for EdgeSrf to give the cleanest surfaces, some of the split curves need to be rebuilt. This gives each
of the curves even parameterization and they will have the same structure.
Rebuild curve segments 1, 2, and 3. Use 4 points and degree 3.
The top rear curve (1) can be faired to make
sure it will be tangent when mirrored and
matches the next curve on the top.
5
Use the EdgeSrf command (Surface menu: Edge Curves) to make 3 surfaces with the three sets of curves.
Robert McNeel & Associates θ
183
Notes:
6
Shade the viewport.
The surfaces do not look bad, but if you tumble
the view you will begin to see that they are not
tangent to one another.
Zebra will confirm this.
To match the end surfaces for the bottle:
1
Mirror the front and rear surfaces on the X axis.
The surfaces are clearly not tangent to their
mirrored copies.
2 Use the MatchSrf command (Surface menu: Surface Edit Tools > Match) to match both sets of mirrored
surfaces for Tangency, using the Average option.
Matching for tangency on mirrored copies with
the Average setting you get G2 continuity, since
both surfaces have the same curvature at the
seam.
Robert McNeel & Associates θ
184
Notes:
To analyze the matched surfaces:
1
2
At this point, we will use the Curvature Analysis tool to evaluate the matched surfaces. This can be useful in
locating areas of extreme curvature, but may force the display to ignore more subtle changes. In any case
the display on each of these simple surfaces should be very smooth and clean.
Hide all curves to get a good view of the transitions between surfaces.
Select all of the surfaces and turn on Curvature Analysis display (Analyze menu: Surface > Curvature
Analysis).
Set the style to Gaussian, and click Auto Range. Make sure you have a fine analysis mesh for a good visual
evaluation. Click back and forth between Auto range and Max range.
The goal when matching is to maintain as even
and gradual a curvature display as possible,
while meeting the continuity requirements.
Notice the edges that have been matched
appear to have a smooth color transition.
The surfaces that haven’t been matched show
an obvious break in the colors.
3
Next we will make another surface from copies of the curves for comparison.
Turn on the Network Curves layer. Use NetworkSrf to make a surface from these curves. Select the new
surface and Add it to the Curvature Analysis display.
Auto Range attempts to find a
range of color that will ignore
extremes in curvature, while Max
Range will map the maximum
curvature to red and the
minimum to blue.
The numbers are for Curvature,
which is, 1/radius .
The denser network surface (2) has a less clean
appearance in this display.
Since the color change is mapped across the
entire range shown, it is important to
remember that the Auto Range setting indicates
a very narrow range of curvature and that the
actual differences may be small even though
the color change is great.
The simple surfaces (1), while being imperfectly
matched at the seams along the side, still look
cleaner at this point.
Robert McNeel & Associates θ
185
Notes:
To match the front and back surfaces to the middle surface:
When matching the front and rear surfaces to the middle surface we need to be sure that that we match in a
way that will not upset the match we have just made. We will do this in two steps to make sure we preserve
the edges we just matched.
Notice is that the middle surface is relatively flat, while the front and back surfaces have more curvature. In
matching the surfaces, be careful not to match the middle surface to the ends. This will introduce
considerable curvature to the side surface and possibly make it dent or deflect inward. If possible, do all of
the matching from the end surfaces to the middle surfaces to avoid this.
Since there are only four points on the back side surface, matching for curvature to the middle surface would
upset the other edge, unless you had Preserve Opposite End turned on. If you have Preserve Opposite End
turned on and you match to Curvature it could introduce a wave in the surface near the middle edge.
To eliminate these potential problems, we will first match to Tangency with the Preserve Opposite End turned
off. Matching to tangency will only move the first two rows of control points, so we won’t have to worry about
any changes to the previous match. But it will get the surface closer along the entire edge. Then we will
match to Curvature with the Preserve Opposite Edge option turned on.
1
2
3
4
The matching work will be done on just the surfaces on one half of the overall shape, so you can Delete the
mirrored copies at this time.
Select the surfaces and Copy them some distance to one side. We will use these surfaces later.
Match both front and back surfaces to the middle surface for Tangency. Turn Average Surfaces and
Preserve Opposite End off. Set the Options in the dialog to Preserve isocurve direction.
These settings will be variable according to the situation. If the results do not look good the first time, try
another setting before accepting the match.
Keep the Curvature Analysis display on. This can help you see the changes.
Next, Match both front and back surfaces to the side surface for Curvature. Turn Preserve Opposite End
on.
To match the middle surface to the front and back surfaces:
1
2
Now lets take a look at a less ideal situation. We will now work on the surfaces that we copied earlier to
compare the difference when we match the middle surface to the front and back surfaces.
Match the middle surface to both front and back surfaces for Tangency. Turn Preserve Opposite End off.
Next, Match the middle surface to both front and back surfaces for Curvature. Turn Preserve Opposite
End on.
Robert McNeel & Associates θ
186
Notes:
3
Select the new matched surfaces and Add them to the Curvature Analysis display.
You will notice an obvious difference in the Curvature Analysis display between the first set of surfaces (1)
and the second (2).
There is a sharp peak in the display near the
matched edges.
Robert McNeel & Associates θ
187
Notes:
11
Sculpting
Designers can build a relatively undefined surface and then use a variety of transform and analysis tools to sculpt
a surface in 3-D space in an intuitive and direct manner.
Curves can be placed approximately. The curves should be edited copies of a single original if possible. This
ensures that they will be compatible when lofted, and create the simplest, most easily edited surface.
In the following exercise four curves have been created for you to use.
Robert McNeel & Associates θ
189
Notes:
Exercise 27—Dashboard
1
2
Open the model Dash.3dm.
Loft the four curves together with the Loose option from the dropdown list. Using Loose creates the simplest
possible geometry and is essential to creating a surface with this technique.
The surface will not touch the interior curves of the loft with this option, but it should be very
smooth and clean looking.
3
Turn on points.
If you also turn on points for the input curves
you will see that the point structure of the
surface exactly matches that of the four curves.
4
Turn off the Curves layer.
Robert McNeel & Associates θ
There is a steering wheel on a
locked layer to help you get a
sense of scale and positioning of
any elements you might wish to
add.
190
Notes:
5
Turn on the points for the surface, use the SetPt command (Transform menu: Set Points) to align the groups
of points in the x direction.
6
Select the points nearest the top edge of the steering wheel.
7
8
Start the Weight command (Edit menu: Control Points > Edit Weight).
In the Set Control Point Weight dialog box, move the slider to the right.
Changing the weight of some of the points gives you more or less local control over the surface nearest the
points.
Robert McNeel & Associates θ
Edit Control Point Weight
191
Notes:
9
Use the Nudge keys to move the points in the Top and the Front viewports.
Notice the sharpness of the bulge closest to the points where weight was changed.
If the surface starts to look chunky, use the Refresh option from the Viewport menu. To activate the
Viewport menu, right-click the viewport title. The RefreshShade command replaces the render meshes on
the selected objects.
Robert McNeel & Associates θ
192
Notes:
10 To get more localized control over the surface knots use the InsertKnot command (Edit menu: Control
Points > Insert Knot) to add a row of points in the V-direction about half way between the bottom and the
next row of points.
Knots can be added in the U- or V-direction or
both with the InsertKnot command.
Wherever possible try to place new knots
midway between the existing knot lines which
are highlighted during the command.
11 Nudge these points a little to make a slight indention.
Keep the surface as simple as possible
throughout.
Add knots sparingly and only when needed;
that is, make sure the big curves in the surface
are satisfactory before adding knots to contend
with the more local ones.
Once knots are added it is much more work to
edit and fair the long sweeping parts of the
curves than with fewer knots.
Robert McNeel & Associates θ
193
Notes:
To make the offset surface:
1
2
3
When you are satisfied with the overall shape of the surface, you can add details to make a more finished
object.
The surface can be offset and trimmed as in the first illustration.
Best results are obtained when the surface has at least degree 3 in both directions. This can be checked with
Object Properties.
Change to the Cutting Curves layer.
Draw a curve that represents where you want to split the surface.
Use the Offset command (Curve menu: Offset Curve) to make a duplicate of the curve offset by one-half
(0.50) inch.
Offsetting surfaces generally results
in a surface of one step lower in
internal continuity. Surfaces that are
only G1 internally may result in
surfaces that have G0 continuity;
that is, they may have a kink in
them. Although Rhino allows these
surfaces, this can lead to problems
downstream.
For this reason, if you intend to
offset surfaces, it is best where
possible to create the initial surface
from degree 3 or higher curves.
These surfaces have at least G2
continuity so that offsetting them will
result in at least G1 continuous
surfaces. Changing the degree of a
surface that has been created from
degree 2 curves to at least degree 3
in both directions is not sufficient to
ensure a G2 surface. Simply
changing the degree after the fact
does not improve internal continuity.
Robert McNeel & Associates θ
194
Notes:
4
Use the Trim command (Edit menu: Trim) to trim the surface between the curves.
5
Use the OffsetSrf command (Surface menu: Offset Surface) to offset the surface by one-fourth (0.25)
inch.
6
Delete the original surface.
Robert McNeel & Associates θ
195
Notes:
7
Use the BlendSrf command (Surface menu: Blend Surface) to blend between the two surfaces.
One of the things we’re trying to show here is a
quick way to make a “tucked” upholstery type
transition.
Adjust the BlendSrf sliders so the cross-section
looks like the example on the left.
8
Add details if time allows.
Robert McNeel & Associates θ
196
Notes:
12
Troubleshooting
Some Rhino operations can make “bad objects” under certain circumstances. Bad objects may cause failure of
commands, shade and render badly, and export incorrectly.
It is good practice to use the Check (Analyze menu: Diagnostics > Check) or SelBadObjects (Analyze menu:
Diagnostics > Select Bad Objects) commands frequently during modeling. If errors can be caught right away the
objects can often be fixed more easily than if the bad part is used to make other objects.
If the goal is to create a rendering or a polygon mesh object, some errors can safely be ignored so long as they do
not get in the way of building the model itself in later stages.
For objects which must be exported as NURBS to other applications such as engineering or manufacturing, it is
best to eliminate all errors if possible.
The troubleshooting tools are used mostly for repairing files imported from other programs.
General strategy
The troubleshooting steps will be the same, whether or not the file was created in Rhino or another application.
Over time, you will discover patterns of problems and develop procedures to fix them.
Although the techniques used vary greatly depending on the individual file, we will focus on a general strategy for
repairing problem files
Robert McNeel & Associates θ
197
Notes:
Start with a clean file
When possible, spending a little time in the originating application to export a “clean” file will save a great deal of
clean up work later. Unfortunately, this is not always an option.
Guidelines for Repairing Files:
1
2
3
4
5
6
7
Open the file.
Hide or delete extra data.
Use the SelDup command (Edit menu: Select Objects > Duplicate Objects) to find duplicate entities and
delete them or move them to a “duplicate” layer in case you need them later.
Hide curves and points.
Use the SelSrf command (Edit menu: Select Objects > Surfaces) to select all the surfaces or the SelPolysrf
command (Edit menu: Select Objects > Polysurfaces) to select all the polysurfaces, Invert (Edit menu:
Select Objects > Invert) the selection, and move the selected items to another layer and turn it off. This will
leave only surfaces or polysurfaces on the screen.
Check for bad surfaces.
The Check and SelBadObjects commands will determine if some of the surfaces in the model have problems
in their data structures. Move these surfaces to a “bad surfaces” layer for later clean up.
If the bad object is a polysurface, use the ExtractBadSrf command to extract the bad surfaces from the
original polysurface.
Then you can fix the bad surfaces and then use the Join command to reattach them to the good part of the
polysurface.
Use ShadedViewport and visually inspect the model.
Does it look like you expected it would? Are there obviously missing surfaces? Do surfaces extend beyond
where they should? The trimming curves needed to fix them may be on the “duplicate” layer.
Look at the Absolute tolerance setting in the Document Properties dialog box on the Units page.
Is it reasonable? Free-form surface modeling requires an intelligent compromise in modeling tolerance.
Surface edges are fitted to neighboring surface edges within the specified modeling tolerance. The tighter the
tolerance, the more complex these surfaces become and system performance suffers. There is no point in
calculating high density surface edge fitting to tolerance values that are not supported by your down-stream
manufacturing processes or by the precision of the input data.
Join (Edit menu: Join) the surfaces.
When joining, edges are joined if they fit within the specified modeling tolerance. If they are outside the
tolerance, they are not joined. Joining does not alter the geometry. It only tags the edges as being close
enough to be treated as coincident, then one edge is discarded.
Look at the results on the command line. Did you get as many polysurfaces as you thought you would?
Sometimes there are double surfaces after importing an IGES file. Usually, one will be complete and the
second one will be missing interior trims. When the Join happens, you have no control over which of the two
surfaces it will select. If you suspect this has occurred, try joining two naked edges. If there is no nearby
naked edge where one should be, Undo the join, and select for duplicate surfaces. Delete the less complete
surfaces and try the Join again.
Robert McNeel & Associates θ
Select Duplicates
Select Bad Objects
198
Notes:
8
Check for naked edges.
Naked edges are surface edges that aren’t joined to another surface. During the join process, the two edges
were farther apart than the specified modeling tolerance. This may be from sloppy initial modeling, a
misleading tolerance setting in the imported IGES file, or duplicate surfaces. If there are too many naked
edges showing when you run the ShowEdges command (Analyze menu: Edge Tools > Show Edges),
consider undoing the Join and relaxing the absolute tolerance and try the Join again. It is likely that the
original modeling was done to a more relaxed tolerance and then exported to a tighter tolerance.
Show Edges
Note: You can not improve the tolerance fitting between surfaces without substantial remodeling.
9
Join naked edges or remodel.
The joining of naked edges can be a mixed blessing. It is a trade off and may cause problems down-stream. If
your reason for joining the edges is for later import into a solid modeler as a solid, or a meshing operation
like making an STL file, using the JoinEdge command (Analyze menu: Edge Tools > Join 2 Naked Edges) will
not generally cause any problems. If you will be cutting sections and most other “curve harvesting”
operations, the sections will have gaps as they cross edges that were joined outside of tolerance. The gap to
be spanned is displayed prior to joining. If the gap is less than twice your tolerance setting, you can proceed
without worry. If the gap is too wide, consider editing or rebuilding the surfaces to reduce the gap. Join and
JoinEdge do not alter the surface geometry. They only tag edges as being coincident within the specified
tolerance.
10 Repair the bad surfaces
It’s best to repair one bad surface at a time, and Join them into the polysurface as you go. In order of least
destructive method to most radical, the problems that caused them to fail Check can be repaired by the
following:
•
Rebuild edges
•
Detach trim curves and re-trim
•
Rebuild surfaces (surfaces change shape)
•
Replace surfaces - harvest edges from surrounding surfaces, cut sections through bad surfaces and build
replacement surfaces from the collected curves.
11 Check for bad objects
Sometimes joining surfaces that pass check can result in a polysurface that fails check. Generally this is
caused by tiny segments in the edge or trimming curves that are shorter than the modeling tolerance. Extract
the adjoining surfaces, check them, use the MergeEdge command (Analyze menu: Edge Tools > Merge
Edge) to eliminate these tiny segments, and join them back in. You are finished when you have a closed
polysurface that passes Check and has no naked edges. As you are joining and fixing surfaces, it is generally
a good idea to run Check from time to time as you work.
Join 2 Naked Edges
Merge Edge
Check
Robert McNeel & Associates θ
199
Notes:
12 Export
Now that the model has been cleaned up and repaired, you can export it as IGES, Parasolid, or STEP for
import into your application.
Exercise 28—Troubleshooting
To try these procedures:
1
2
Open the model Check 01.3dm
This file has a bad object.
Open the file Check 02.igs.
This file has several problems. It is representative of commonly found problems with IGES files. After
repairing the bad object and trimming it, look for other objects that don’t appear to be trimmed correctly.
Robert McNeel & Associates θ
200
Notes:
13
Polygon Meshes from NURBS
Objects
Although Rhino is a NURBS modeler, some tools are included to create and edit polygon mesh objects.
There is no best method that works for every situation. Downstream requirements are the most important
considerations when determining which technique to use for meshing. If the mesh is going to be used for
rendering, you will use different mesh settings than you would use for a mesh that will be used for manufacturing
(machining or prototyping).
When meshing for rendering, appearance and speed are the most important considerations. You should strive to
achieve a mesh with as few polygons as possible to get the look you require. The polygon count will affect
performance, but too few polygons might not give you the quality you are after in the final rendering. Generally if
it looks good, then you have the right setting.
Meshing for manufacturing is an entirely different situation. You should try to achieve the smallest deviation of the
mesh from the NURBS surface. The mesh is an approximation of the NURBS surface and deviation from the
NURBS surface may be visible in the final manufactured part.
The original NURBS surface.
Robert McNeel & Associates θ
Meshing for manufacturing, if
the mesh is not accurate
enough, you will see visible
polygon edges on your final
products.
Using the same meshing
setting, the rendering system
can hide polygon edges and
visually "smooth" the mesh to
show a smooth look.
201
Notes:
Exercise 29—Meshing
1
2
Open the model Meshing.3dm.
Set the Perspective viewport to ShadedViewport mode and inspect the curved edge between the surfaces.
There is a series of angular gaps where the
background color shows through.
3
4
5
Get back to a wireframe view.
The edges appear to be exactly coincident. The gaps you saw in the shaded view were due to the polygon
mesh Rhino uses to create shaded and rendered views. The polygons are so coarse at the edges that they are
clearly visible as individual facets.
In the Document Properties dialog box, on the Mesh page, click Smooth & slower.
Inspect the curved edge between the surfaces.
The overall rounded surface is smoother and
cleaner looking but the edges still have gaps.
Although it is possible to use the Custom settings to refine the shaded mesh enough to eliminate the jagged
edges, this will affect all render meshes in the model. This will increase the amount of time necessary to
create meshes and may decrease the performance of shading and rendering to unacceptable levels. To
eliminate the gaps without refining the mesh settings, join adjacent surfaces to each other.
Robert McNeel & Associates θ
202
Notes:
6
Join the three surfaces together.
The mesh is refined along each side of the
joined edges so that they match exactly across
the edge. This eliminates the gaps visible
earlier.
7
Rhino saves these polygon meshes with the file in order to reduce the time needed to shade the model when
it is reopened. These meshes can be very large and can increase the file size considerably.
From the File menu: Save Small.
This saves the file without the render meshes and the bitmap preview, to conserve disk file space.
Save Small
Note: The meshes created by Render and shading modes on NURBS surfaces and polysurfaces are invisible in
wireframe display, not editable, and cannot be separated from the NURBS object. Render meshes are
controlled by settings in the Document Properties dialog box, on the Mesh page.
Robert McNeel & Associates θ
203
Notes:
Creating polygon meshes
The meshes created by the Mesh command are visible and editable, and separate from the NURBS objects they
were created from.
Rhino has two methods for controlling mesh density: Simple Controls or Detailed Controls. With Simple
Controls a slider is used to roughly control the density and number of mesh polygons. With Detailed Controls
you can change any of six settings and enable four check boxes to control the way the mesh is made.
The mesh is created in three steps based on the detailed criteria: initial quads, refinement, and adjustment for
trim boundaries. These steps are not shown to you, it’s all automatic.
In the following exercise we will discuss each of the six detailed controls and illustrate their influence on the
model.
Maximum angle - The maximum angle between adjacent faces in the mesh. Smaller values result in slower
meshing, more accurate meshes, and higher polygon count.
Maximum aspect ratio - The maximum ratio length to width of triangles in the initial grid quads.
Minimum edge length - Bigger values result in faster meshing, less accurate meshes and lower polygon
count. Controls the minimum length of the sides of quads and triangles of the mesh.
Maximum edge length - Smaller values result in slower meshing and higher polygon count with more
equally sized polygons. When Refine is selected, polygons are refined until all polygon edges are shorter than
this value. This is also approximately the maximum edge length of the quads in the initial mesh grid.
Maximum distance, edge to surface - Smaller values result in slower meshing, more accurate meshes, and
higher polygon count. When Refine is selected, polygons are refined until the distance from a polygon edge
midpoint to the NURBS surface is smaller than this value. This is also approximately the maximum distance
from polygon edge midpoints to the NURBS surface in the initial mesh grid.
Minimum initial grid quads - Bigger values result in slower meshing, more accurate meshes and higher
polygon count with more evenly distributed polygons. This is the minimum number of quads in the mesh
before any of the other refinements are applied. If you set a number for this and set all other values to 0, this
will be the mesh returned.
Robert McNeel & Associates θ
204
Notes:
To create a mesh using detailed controls:
1
2
Select the object.
Start the Mesh command (Mesh menu: From NURBS Object).
The Polygon Mesh Options dialog box appears.
Mesh from NURBS object
3
In the Polygon Mesh Options dialog box, click Detailed Controls.
The Polygon Mesh Detailed Controls dialog box appears. These settings are saved to the Windows Registry
when you exit Rhino.
4
In the Polygon Mesh Detailed Options dialog box set the following:
Check Refine.
Uncheck Jagged seams.
Uncheck Simple planes.
Click OK.
A mesh is created using the
default settings.
Robert McNeel & Associates θ
205
Notes:
5
6
7
Hide the original polysurface and use the Flat Shade display mode to view the output.
The Flat Shade display mode shows what the model would look like if it was output for prototyping or
machining at this mesh density.
Undo the previous operation, repeat the Mesh command, and then make the following changes in the
Polygon Mesh Detailed Controls dialog box.
Flat Shade
Note the changes in polygon
count, the shape of the mesh,
and the quality of the flatshaded mesh.
Undo the previous operation, repeat the Mesh command, and then make the following changes in the
Polygon Mesh Detailed Controls dialog box.
Note the changes in polygon
count, the shape of the mesh,
and the quality of the flatshaded mesh.
Robert McNeel & Associates θ
206
Notes:
8
Undo the previous operation, repeat the Mesh command, and then make the following changes in the
Polygon Mesh Detailed Controls dialog box.
Note the changes in polygon
count, the shape of the mesh,
and the quality of the flatshaded mesh.
9
Undo the previous operation, repeat the Mesh command, and then make the following changes in the
Polygon Mesh Detailed Controls dialog box.
Note the changes in polygon
count, the shape of the mesh,
and the quality of the flatshaded object.
Robert McNeel & Associates θ
207
Part Four:
Rendering
Notes:
14
Rendering with Rhino
With Rhino, creating design renderings of Rhino models is easy. Simply add materials, lights, and render.
There are several controls in the basic Rhino renderer that allow you to create some interesting special effects.
In the following exercise we will render with and without isocurves, adjust colors, transparency, and ambient light
to create images with special effects.
Exercise 30—Rhino Rendering
1
2
3
4
5
Open the model Finished Detergent Bottle.3dm.
From the Render menu, click Current Renderer, then click Rhino Render.
In the Document Properties dialog box, on the Rhino Render page, check Use lights on layers that are
off.
Select the bottle and use the Properties command, on the Material page, to assign it a color and a glossy
plastic reflective finish.
Select the cap and use the Properties command, on the Material page, to assign it a color and a glossy
plastic reflective finish.
Robert McNeel & Associates θ
211
Notes:
6
Render the Perspective viewport.
To render with isocurves displayed:
1
2
3
4
Start the DocumentProperties command.
In the Document Properties dialog box, on the Rhino Render page, check Render Curves and
Isocurves.
Render the Perspective viewport.
Error! Unknown switch argument.
The wire color is the same as the layer color because the
object's wire color is set to By Layer.
Use the Properties command, on the Object page, to change the color to black, then Render the
Perspective viewport.
The objects are rendered with black isocurves.
Robert McNeel & Associates θ
212
Notes:
To render a transparent material with isocurves displayed:
1
Use the Properties command, on the Material page, to change Transparency to 90, then Render the
Perspective viewport.
The objects are rendered with black isocurves and the
material is transparent.
2
Use the Properties command, on the Object page, to change the Basic color to white, then Render the
Perspective viewport.
The objects are rendered with white isocurves and the
material is transparent.
3
Use the Properties command, on the Material page, to change the Basic color to white.
4
Start the DocumentProperties command.
Robert McNeel & Associates θ
213
Notes:
5
In the Document Properties dialog box, on the Rhino Render page, change the Ambient color to white,
then Render the Perspective viewport.
The objects are rendered with white wires, but the wires
on the back faces are a different tone.
6
Experiment with these adjustments to get the desired effect.
7
Turn on the Lights layer and adjust the properties of the lights for more subtle changes.
Robert McNeel & Associates θ
214
Notes:
15
Rendering with Flamingo
With Flamingo, creating presentation images of Rhino models is easy. Simply add materials, lights, environment,
and render.
With Flamingo’s powerful Material Editor, you can assign any combination of color, reflectivity, transparency,
highlight, multiple bitmaps, and multiple procedural patterns to one material.
In the following exercise we will add environment settings, add materials and lights, create custom materials, edit
materials, add decals to objects, and render a scene.
Exercise 31—Rendering
`
Open the model Mug.3dm.
To set Flamingo as the current renderer:
`
From the Rhino Render menu, click Current Renderer, and then click Flamingo Raytrace.
Robert McNeel & Associates θ
215
Notes:
To set up the rendering properties:
1
2
3
The rendering properties include environment settings, sun light, plant season, render, and ambient light
settings.
From the Raytrace menu, click Properties.
In the Document Properties dialog box, on the Flamingo tab, click Environment to change how the
background appears or to add certain special effects such as an infinite ground plane or haze.
In the Environment dialog box, check Background Image, and select Jeff’s Sunroom_Big.jpg.
Robert McNeel & Associates θ
216
Notes:
4
In the Background Image dialog box, change the Projection to Spherical, then click on the Main tab.
5
6
In the Environment dialog box, Main tab, check Ground Plane.
In the Ground Plane tab, click Material, and from the Flamingo library select Ceramic Tile, Mosaic,
Square 1”, Ivory, Medium Gloss, then click OK in all of the dialog boxes.
7
From the Raytrace menu, click Render to render the Perspective viewport.
Robert McNeel & Associates θ
217
Notes:
To assign Flamingo materials to layers:
1
2
3
4
5
6
7
Open the Layers dialog box.
In the Layers dialog box, select the Floss Blister layer, and click in its Material column.
In the Material dialog box, under Assign By, click Plug-in to use Flamingo materials.
Click Browse to access the Flamingo material libraries.
From the Material Library dialog box, in the Mug library select Blister Plastic, and click OK.
In the Material dialog box, click OK.
Close the Layers dialog box.
Robert McNeel & Associates θ
218
Notes:
Add lights
So far we have used the default lighting in Flamingo. This invisible light comes from over the viewer’s left
shoulder. It is enough to illuminate the model and to give you a starting point. The default light is on only if no
other lights are on in the scene and it cannot be modified. In order to control the lighting, we are going to add our
own lights.
To add lights:
1
2
From the Render menu, click Create Spotlight.
Make a large spotlight that shines on the scene from the front and slightly above as shown below.
Use elevator mode, or turn on the spotlight’s control points and drag them to move the light into position.
Spotlight, front view
.
Spotlight, right view
.
Spotlight, perspective view
Robert McNeel & Associates θ
219
Notes:
3
Adjust the properties of the light as shown below:
4
From the Raytrace menu, click Render.
This makes a nicer image, but two or three lights in a scene improve the rendering. We are going to add
another light to create highlights on the mug.
To add a second light:
1
2
Select the first light.
In the Top viewport, Mirror the light across the vertical axis.
Spotlight, front view.
Robert McNeel & Associates θ
220
Notes:
3
Adjust the properties of the light as shown below:
4
From the Raytrace menu, click Render.
To add a third light:
1
2
From the Render menu, click Create Spotlight.
Make a large spotlight that shines on the scene from the below.
This light will be used to add a little light to the underside of the toothpaste tube and the floss packet.
Spotlight, front view.
Robert McNeel & Associates θ
221
Notes:
3
Adjust the properties of the light as shown below:
It is important to turn the shadow intensity to 0 so that the light will penetrate through the ground plane.
4
From the Raytrace menu, click Render.
To make a material from scratch and assign it to a layer:
1
2
3
4
5
Open the Layers dialog box.
In the Layers dialog box, select the Mug layer, and click in the Material column.
In the Material dialog box, under Assign By, click Plug-in to use Flamingo.
Click Browse to access the Flamingo material libraries.
In the Material Library dialog box, click Material, then click New, then click Default Gray.
Robert McNeel & Associates θ
222
Notes:
6
In the Material Editor dialog box, in the Procedures area, click New, then click Clear Finish to give the
material a multi-layer finish.
7
In the Material Editor dialog box, in the Procedures tree, select Clear Finish, and then change the Base
Color to green (R=21, G=210, B=180).
Robert McNeel & Associates θ
223
Notes:
8
Add some color to the Top Coat Mirror color (R=198, G=247, B=255) to add some realism.
9
In the Material Editor dialog box, in the Procedures tree, highlight Base and move the Reflective Finish
slider toward the middle or type in a value of 0.420.
Robert McNeel & Associates θ
224
Notes:
10 In the Material Editor dialog box, in the Procedures tree, highlight Top Coat.
11 On the Highlight tab, check Specify Highlight, and change the Sharpness to 240 and the Intensity to
0.550.
12 Save the material to the Mug Library. Name it Green Ceramic.
13 Click OK to close all of the dialog boxes, and close the Layers dialog box.
14 From the Raytrace menu, click Render.
Robert McNeel & Associates θ
225
Notes:
Image and bump maps
Instead of simply using color for your material you can use an image of a material. You can scan photographs and
real objects like wallpaper and carpet, create patterns in a paint program, or use images from libraries of textures
from other renderers, or other sources of bitmap images.
Image mapping uses bitmap images to add detail to the material. You can use images to alter many attributes of
the material’s surface including its color pattern and apparent three-dimensional surface quality (bump).
Procedural bumps add a random roughness or knurled quality to the surface.
To create a new material with an image map and assign it to an object:
1
2
3
4
5
Select the cap on the toothpaste tube.
From the Edit menu, click Properties.
On the Material tab, click Plug-in, and then click Browse to access the Flamingo material libraries.
Select Flamingo/Plastics, White, Smooth to use as a template for the new material.
In the Material Editor dialog box, on the Highlight tab, check Specify Highlight, adjust the Sharpness
and Intensity.
Robert McNeel & Associates θ
226
Notes:
6
In the Material Editor dialog box, on the Maps tab, under Image Mapping, click Add.
7
In the Select Bitmap dialog box, select Tube Bump.jpg.
The Image Mapping dialog box appears.
8 On the Image Mapping dialog, click OK.
9 In the Material Editor dialog box, click OK.
10 In the Save Material As dialog box, save the material as Toothpaste Cap in the Mug material library.
11 In the Material Library dialog box, click OK.
12 In the Properties dialog box on the Flamingo page, in the Material mapping and tiling dropdown, select
Cylindrical, then set the number of tiles and the height.
Robert McNeel & Associates θ
227
Notes:
13 On the Flamingo tab, click the Orientation button.
14 Orient the mapping cylinder to the center of the cap, then adjust the position by moving the drag points to
adjust it so that it roughly aligns with the cap.
15 From the Render menu, click Render.
Robert McNeel & Associates θ
228
Notes:
Decals
A decal is the method Flamingo uses to apply an image bitmap to a specific area of an object.
The decal mapping type tells Flamingo how to project the decal onto your object. The four mapping types, planar,
cylindrical, spherical, and UV, are described below.
Planar
The planar mapping type is the most common mapping type. It is appropriate when mapping to flat or gently
curved objects.
Cylindrical
The cylindrical mapping type is useful for placing decals onto objects that curve in one direction, such as
labels on wine bottles.
The cylindrical projection maps the bitmap onto the mapping cylinder with the bitmap’s vertical axis along
the cylinder’s axis, and the horizontal axis around the cylinder, like a wine bottle label.
Spherical
The spherical mapping type is useful for placing images onto objects that curve in two directions. The
spherical projection maps the bitmap onto the mapping sphere with the bitmap’s vertical axis (height),
curving from pole to pole, and the horizontal axis curving around the equator.
Initially the mapping sphere’s equator is assumed to be parallel to the current construction plane, and the
sphere’s axis is parallel to the construction plane z-axis. Later you can modify its orientation.
UV
UV mapping stretches the image to fit the whole surface. The U- and V-directions of the surface determine
which direction the map is applied. There are no controls.
UV mapping works well for organic shapes, hair, skin, and plant structures.
On trimmed surfaces and polysurfaces, only parts of the image may appear in the rendering. UV mapping
stretches the bitmap over the whole UV range of the surface. If some of that range has been trimmed away,
the corresponding parts of the bitmap will not be visible.
Robert McNeel & Associates θ
229
Notes:
To map a decal with planar projection:
1
2
3
4
Select the toothpaste box.
From the Edit menu, click Object Properties.
In the Properties dialog box, on the Decals page, click Add, select the Minty Green-Box Upper.jpg, then
Open, and then click Planar and OK.
Using object snaps, pick locations for the decal Location (1), the Width (2), and Height (3) direction of the
decal.
These three points define the decal plane’s location and extents. The decal plane must lie on or behind the
surface of the object. The decal projects up from the decal plane. Portions of the surface that lie behind the
decal plane will not show the decal.
After the decal is placed, you can click the control points on the decal control wireframe to move, rotate, or
stretch the decal.
5
Press Enter or right-click to set the location.
6
Continue to place bitmaps on the sides and ends of the box.
The flaps will require some additional controls.
Robert McNeel & Associates θ
230
Notes:
To add a planar decal with masking:
1
2
3
4
5
Select the top end flap of the toothpaste box.
From the Edit menu, click Object Properties.
In the Properties dialog box, on the Decals page, click Add, select the Minty Green-TopFlap.jpg, and
then click Planar.
Pick locations for the decal Location, the Width, and Height direction of the decal.
In the Edit Decal dialog box, on the Map tab, in the Masking dropdown, click Color.
Use the dropper to select the black part of the image. Check the Transparent box.
The part that is black in the bitmap will appear as transparent in the rendered image.
6
7
Continue to place bitmaps on the sides and ends of the flaps.
From the Raytrace menu, click Render.
Robert McNeel & Associates θ
231
Notes:
8
Use planar mapping to put the decals on the floss container and the toothpaste tube.
The magenta rectangles were created to assist with placement of the decals.
To map a decal with cylindrical projection
1
2
3
4
5
6
The circle of the mapping cylinder is initially parallel to the current construction plane, and the cylinder’s axis
is parallel to the construction plane z-axis.
Select the mug.
Start the Properties command (Edit menu: Object Properties...).
In the Properties dialog box, on the Decals page, click Add.
Select the Sailboat-002.jpg.
In the Decal Mapping Style dialog box, click Cylindrical.
Pick locations for the Center of cylinder and a Radius or Diameter for the decal.
The controls then let you click the control points on the decal control wireframe to move, rotate, or stretch
the decal cylinder.
Robert McNeel & Associates θ
232
Notes:
7
Press Enter or right-click to set the location.
The Edit Decal dialog box appears, change the decal’s visual properties as indicated below.
8
From the Raytrace menu, click Render.
Robert McNeel & Associates θ
233
Notes:
9 Turn on the toothbrush layers.
10 Adjust the materials settings and lighting as needed to get the desired final results.
Robert McNeel & Associates θ
234
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement