Latest news
TutorialsRhino

Creating Surfaces from Curves in Rhino 8: Curve, Sweep1 and Zebra

This hands-on workflow covers creating curves with control points in Rhino 8, building surfaces with Sweep1 and Ribbon, and inspecting surface continuity with Zebra.

A curved pavilion surface with a stripe pattern, representing surface modeling and analysis in RhinoAI image
Representative image, generated with AI.Image: 3dsınıfı / FCA AI

In brief

  1. Curve uses selected locations as control points, while InterpCrv makes the curve pass through the selected points.
  2. Sweep1 creates a surface from ordered section curves along a rail curve.
  3. Ribbon offsets a curve to create a ruled surface between the original and offset curves.
  4. Zebra uses stripes to help visually assess G0, G1 and G2 continuity at surface joins.

What will you learn in this tutorial?

Drawing curves in Rhino, using them to create surfaces, and checking how those surfaces join are fundamental steps in freeform architectural modeling. In this tutorial, you’ll learn to create curves with Rhino 8’s Curve and InterpCrv commands; generate a surface along a rail with Sweep1; offset a curve to create a ribbon-shaped surface with Ribbon; and inspect surface continuity with Zebra.

This workflow can be used to build forms such as a conceptual shell, canopy or interior element. The aim is not to prescribe a particular design, but to explain the commands’ inputs, how they differ, and how to inspect the model.

Requirements

  • Rhino 8. The source materials describe the commands covered here in the Rhino 8 documentation.

  • The Rhino interface for creating and selecting curves. This guide doesn’t assume a specific menu path; it uses the command names directly.

  • A stripe color that contrasts with the object’s base color, so the lines are easy to read during Zebra analysis.

The sources don’t specify system requirements, costs or hardware requirements. The steps below are therefore limited to the documented commands and options.

Step by step: curves, surfaces and inspection

1. Decide whether the curve should be shaped by control points or pass through points

The Curve command creates a freeform curve using control points corresponding to the selected locations. The curve’s shape is influenced by these points, but it doesn’t necessarily pass through every control point. Thinking of the points as shaping references can make it easier to build a controlled form.

If the curve needs to pass through specific locations, use InterpCrv. This command treats the selected locations as interpolation points. A line that must touch specific design points and a profile shaped with control points don’t have to be drawn using the same method.

With both commands, create the curve by specifying its starting location and selecting subsequent points, then finish the command to complete the drawing. AutoClose lets you close the curve when the cursor approaches its start point. The Degree option in InterpCrv can create the requested degree even when only two points are selected; with the Curve command, the resulting degree is related to the number of selected points. In both commands, SubDFriendly is compatible only with degree 3.

2. Prepare the rail and sections for Sweep1

Sweep1 uses a single rail curve and profiles that define the surface’s sections. First select the rail, then select the section curves in the order in which you want the surface to pass through them. Using sections with the same structure can help produce a better sweep surface. For sections with different structures, the command’s Rebuild cross sections or Refit cross sections options can be used; these operations use copies of the curves for the sweep.

If the section curves are closed, aligning their seam points is important. The Automatic option attempts to align them without intervention; if necessary, you can move seam points along the curves and reverse their directions with Flip.

Frame Style affects how sections are oriented along the rail. Freeform rotates to preserve the angle between the section curve and the rail. Roadlike uses an axis to calculate the rotation; you can specify the axis with Set axis if needed. If a section rotates unexpectedly in an element such as a curved shell or handrail, check these orientation options before redrawing the geometry.

3. Create a surface by offsetting with Ribbon

Ribbon offsets a curve to create a ruled surface between the input curve and the offset curve. Select the curve, drag the cursor to one side, and set the position. Distance sets the offset distance; ThroughPoint offsets the curve through a selected point instead of using a distance. BothSides creates the offset on both sides of the input curve.

For angular shapes, the Corner options change the result. Sharp extends the outer corners sharply; Round finishes the corners with arc segments, while Smooth uses blend segments. Chamfer connects the corner ends with a straight line. These choices affect not just the curve, but also the edge behavior of the resulting ribbon surface.

For closed curves, the separate RibbonOffset command can create a surface between the offset curve and the input curve using Sweep2 or Mixed Sweep2 / NetworkSrf methods. Method selection and preview options are among the command’s surface settings. For an open curve, note the difference between Ribbon and RibbonOffset, which is documented for closed curves, rather than using the latter.

4. Evaluate joins with Zebra

Zebra lets you visually inspect smoothness and curvature behavior using stripe patterns applied to a surface. Adjust the stripe direction, size and color, and make sure the lines contrast clearly with the object’s base color. If the analysis mesh doesn’t look detailed enough, increase its density. According to the documentation, a denser mesh improves analysis accuracy.

How the stripes behave at the join between two surfaces provides a visual indication of continuity:

  • If the stripes shift sideways or break at the join, the surfaces may meet positionally; this is G0, or positional continuity only.

  • If the stripes align and turn sharply at the join, position and tangency match, but curvature doesn’t. This is G1 continuity.

  • If the stripes flow continuously and smoothly across the join, this may indicate G2 continuity, where position, tangency and curvature match.

Zebra is a visual assessment tool, and its results can be affected by the detail of the analysis mesh. Depending on the settings, the command may create an invisible mesh on objects that don’t already have an analysis mesh. These meshes can be stored in the Rhino file and increase its size. The documentation states that existing analysis meshes can be removed with RefreshShade or with the Save geometry only option in the Save and SaveAs commands.

Implications for architectural and visualization workflows

For architects and visualization professionals modeling freeform façades, canopies, ceilings or interior elements, these commands can make the transition from curves to surfaces more controlled. For example, Sweep1 carries sections along a rail, while Zebra helps visually identify continuity issues where surfaces meet. These steps can also be used to inspect geometry before rendering.

When creating a surface, consider not just its silhouette, but also the order, structure and orientation of its sections. Don’t treat the Zebra result as definitive geometric verification for a model intended for production or presentation; the tool visually evaluates surface behavior. The sources provide no information about hardware, licensing or compatibility with other software, so no assumptions should be made on these topics.

Common mistakes

  • Treating Curve and InterpCrv as the same command: the first creates a curve shaped by control points, while the second creates a curve that passes through the selected locations.

  • Selecting Sweep1 sections in the wrong order, or overlooking how profiles with different structures affect the surface.

  • Forgetting to check the Frame Style option when evaluating Sweep1’s rotation.

  • Using low-contrast Zebra stripes or making decisions based on an analysis mesh with insufficient detail.

  • Failing to account for the fact that Zebra analysis meshes can be stored in the file and increase its size.

Next steps

First, create alternative profiles for the same form with Curve and InterpCrv, then compare which points each curve needs to pass through. Next, try different Frame Style options in Sweep1 with the same sections, and inspect the surface joins with Zebra. If you’re working with a closed profile, also evaluate the RibbonOffset options. Changing one setting at a time makes it easier to track which choice produced a particular result and to understand your geometry decisions.

Sources and license

This tutorial is adapted from McNeel’s Rhino 8 documentation pages for the Curve and InterpCrv, Ribbon and RibbonOffset, Zebra, and Sweep1 commands. All sources were provided as lisans=serbest; the command descriptions have been adapted into Turkish tutorial text.

Sources

3 sources
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/curve.htm
Summary
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/ribbon.htm
Summary
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/zebra.htm
Summary

Source texts are not republished; short quotes are marked, everything else is our own summary and commentary.

3dsınıfı’s take
3dEditor’s assessment

This set of commands helps bring the transition from curves to surfaces and visual model inspection together in a single workflow, particularly for freeform shells and interior elements. Students and offices using Rhino 8 can benefit from first understanding the difference between Curve and InterpCrv, then trying Sweep1 and Zebra on small projects.

For teams in Turkey, the main consideration is the modeling discipline the workflow requires: section order, curve structure and orientation can all have a noticeable effect on the result. The sources provide no information about pricing, hardware requirements or compatibility with other software, so this tutorial shouldn’t be used to make purchasing or workstation decisions. It’s also best to treat Zebra as a review tool, not as final verification.

Frequently asked questions

What’s the difference between Curve and InterpCrv in Rhino?

Curve uses selected locations as control points. InterpCrv makes the curve pass through the selected locations.

How does the Rhino Sweep1 command work?

Sweep1 creates a surface from ordered section curves along a rail curve. Using sections with the same structure can help produce a better sweep surface.

How does Rhino Zebra analysis show G0, G1 and G2?

Shifting stripes may indicate G0; stripes that align and turn sharply may indicate G1; and stripes that flow continuously and smoothly may indicate G2 continuity.

Comments and the forum are in Turkish.Join the discussion
+

Related news