Rhino Reference
Free reference guide: Rhino Reference
About Rhino Reference
This Rhino Reference is a practical quick-lookup for Rhinoceros 3D modeling, covering eight categories essential for NURBS-based design work. The surface creation section documents Loft (multi-curve connection with Normal/Loose/Tight/Straight styles), Sweep1 and Sweep2 (rail-based sweeping with Freeform and Roadlike options), NetworkSrf (from intersecting U/V curve networks with continuity control), Patch (surface fitting from boundary curves or point clouds), ExtrudeSrf/ExtrudeCrv (with taper and cap options), and Revolve (axis rotation with deformable NURBS support).
NURBS editing and solid operations form the core of Rhino modeling workflows. The reference covers PointsOn (F10) for control point manipulation with InsertControlPoint, RemoveControlPoint, SetPt, and Weight commands. Rebuild adjusts degree and control point count for surface quality optimization. MatchSrf enables G0 (position), G1 (tangency), and G2 (curvature) continuity matching between surfaces, verifiable with Zebra analysis. Boolean operations (Union, Difference, Intersection) are documented with failure recovery workflows using Intersect, Split, and Join as alternatives.
Mesh tools, Grasshopper integration, export workflows, and Python scripting complete the reference. Mesh conversion settings include detailed controls for 3D printing (max distance edge to surface, angle tolerance), ReduceMesh for polygon optimization, and MeshRepair for defect analysis and healing. Grasshopper entries cover data exchange between Rhino and GH, Bake options (standard, Elefront, Human plugins), and GH Player. Export format documentation spans NURBS-preserving formats (3dm, STEP, IGES), mesh formats (STL, OBJ, FBX, 3MF), and rendering formats (glTF, COLLADA). RhinoPython basics and loop-based generative geometry examples are included.
Key Features
- Surface creation commands: Loft, Sweep1/2, NetworkSrf, Patch, ExtrudeSrf, and Revolve with all options
- NURBS editing: PointsOn (F10), Rebuild, MatchSrf (G0/G1/G2 continuity), and MergeSrf workflows
- Boolean operations: Union, Difference, and Intersection with failure recovery alternatives
- Mesh tools for 3D printing: conversion settings, ReduceMesh polygon optimization, and MeshRepair wizard
- Grasshopper integration: data exchange, Bake options, Elefront/Human plugins, and GH Player
- Complete export format reference: 3dm, STEP, IGES, STL, OBJ, FBX, glTF with optimal STL settings
- Viewport navigation and editing shortcuts with keyboard references
- RhinoPython scripting basics and loop-based generative geometry examples
Frequently Asked Questions
What surface creation methods does Rhino offer?
Rhino provides Loft (connecting multiple section curves with Normal, Loose, Tight, or Straight styles), Sweep1/Sweep2 (sweeping cross-sections along one or two rail curves), NetworkSrf (from intersecting U and V direction curves with Position/Tangency/Curvature edge continuity), Patch (fitting a surface to boundary curves or point cloud data), ExtrudeSrf/ExtrudeCrv (straight extrusion with direction, taper, and cap options), and Revolve (rotating a profile curve around an axis for up to 360 degrees).
How do I achieve smooth surface transitions with MatchSrf?
MatchSrf offers three continuity levels: G0 (Position) ensures no gap between surfaces, G1 (Tangency) creates smooth transitions without visible seams, and G2 (Curvature) ensures reflection continuity for Class-A surface quality. Use the Average surfaces option to modify both surfaces, and verify results with Zebra analysis. For automotive and aerospace work, G2 or higher continuity is typically required.
What should I do when Boolean operations fail?
Boolean failures usually occur when objects are not closed solids or do not properly intersect. The recovery workflow is: first run Intersect to generate intersection curves, then use Split to cut each solid at the intersection, delete the unwanted faces, and finally Join the remaining faces into a closed polysurface. This manual approach works even when the automated Boolean commands cannot compute the result.
How do I set up mesh export for 3D printing?
Use the Mesh command with detailed controls: set Max distance edge to surface to 0.01mm for general use or 0.001mm for precision, angle tolerance to 15 degrees (default) or 5 degrees for high quality, and export as binary STL for smaller file size. Before exporting, run SelClosedSrf to verify closed surfaces, ShowEdges with Naked option to check for open edges, and Check for validity. Ensure your model is in millimeters.
How does Grasshopper exchange data with Rhino?
From Rhino to Grasshopper, use Set One or Set Multiple to reference existing geometry, which auto-updates when modified in Rhino. From Grasshopper to Rhino, right-click a component and select Bake to convert results into Rhino objects with layer and name options. The Elefront plugin adds attribute automation and object replacement, while the Human plugin provides real-time preview with custom colors and materials. GH Player runs .gh files directly as Rhino commands.
What are the key export formats and when to use each?
For NURBS data exchange, use STEP (.stp, AP203/AP214) as the CAD standard or IGES (.igs) for legacy compatibility. For 3D printing, use STL (.stl) or 3MF (.3mf). For game and animation workflows, use FBX (.fbx) or OBJ (.obj) with UV coordinates. For web-based 3D, use glTF (.gltf, glTF 2.0). The native .3dm format preserves all NURBS data, construction history, and layer information.
What are the essential Rhino keyboard shortcuts?
For viewport navigation: right-mouse-button drag to rotate, Shift+RMB to pan, Ctrl+RMB or mouse wheel to zoom, and numpad keys for standard views (Up=Top, Down=Bottom, Enter=Perspective). For editing: F10 shows control points, F11 hides them, F7 toggles the grid, Tab locks direction, and Shift enables ortho mode. Transform shortcuts include Ctrl+Shift+M for Mirror and Ctrl+Shift+A for Array.
How can I use RhinoPython for generative design?
Import rhinoscriptsyntax as rs to access geometry creation functions like rs.AddPoint, rs.AddLine, rs.AddCircle, and rs.ExtrudeCurveStraight. Use Python loops with math functions to generate parametric patterns, such as spiral point arrays with trigonometric calculations. Apply rs.AddInterpCurve for smooth curves through points, and rs.RotateObject or rs.CopyObject for circular and linear arrays of geometry.