Cinema 4D / BodyPaint 3D Program Documentation Tutorials Mechanical Modeling Tutorial
Function available in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Modeling with Splines and Generator Objects

Modeling with Splines and Generator Objects

General information about Spline Primitives and Splines

Many different types of shapes can be created using curves. In Cinema 4D, Spline objects can be created by manually creating points in the Viewport or by making use of one of the many standard parametric Spline Primitives. Spline Primitives let you create anything from a simpleCircle, a Helix or Text with a click of the mouse. Spline Primitives are located in the main Cinema 4D Create menu (as well as in the top icon palette). These shapes can then be modified via the Attribute Manager’s settings or, if you want to work at point level, converted to Spline Objects (i.e. made editable). To make an object editable, simply press the "c” key on your keyboard or select the Make Editable command in the Mesh | Conversion menu. This will however cause parameters such as those used to round edges or for scaling to be lost.

Creating Spline objects

After selecting the type of Spline you want to create, click in the Viewport, point-by-point, to create it. You should be in Use Point mode and press the Cmd/Ctrl (click and drag to create a Bézier spline - see next section below) with the Move, Scale or Rotate tool active. Creating splines manually is much easier using the new Spline Pen and Spline Sketch tools added in R17. These can be found in the Create | Spline menu.

Depending on the type of Spline selected, the resulting interpolation will look different, as shown in the image below. The number and position of the points in the Splines below is the same - only the interpolation between them differs. The Spline types from left to right are: Bezier; B-Spline; Akima; Cubic; Linear.

Using Spline tangents

The Bézier Spline is the only curve type that can also be adjusted using tangents. Tangents can be created by either clicking and dragging with the mouse when creating the points of a curve or by selecting a point on a curve and subsequently selecting the Soft Soft Interpolation command (Mesh | Spline). Tangents of selected points can be edited by dragging their handles if the Move, Scale or Rotate tools are active.

A tangent can also be broken by simultaneously pressing the Shift key while dragging a tangent handle. Tangents can be smoothed again or be given an equal length by using the Equal Tangent Length or Equal Tangent Direction commands, respectively. The above-mentioned commands can also be accessed by right-clicking in an empty area of the Viewport. The Spline object must be selected and you must be in Points mode to do so. If no points are selected on the Spline object, the command will affect all points on the spline.

Spline direction

New points can only be added to the end of a Spline. The direction in which a Spline runs is depicted by a white-to-blue gradient on the Spline itself. The blue end denotes the end of the Spline. If you want to add points to the beginning of the Spline, the direction in which the Spline runs must first be reversed. To do so, make sure you are in Points mode and the Spline is selected, and select the Reverse Sequence command (Mesh | Spline). Ctrl/Cmd + click in the Viewport to add new points. If you want to add points along an existing Spline, simply Ctrl/Cmd + click on the Spline where you want to add the new point(s). The new points’ tangents will automatically be adjusted in such a manner as to not disrupt the Spline’s original shape.

Spline settings in the Attribute Manager

The Spline type can be changed at any time in the Attribute Manager settings. To do so, select the curve in the Object Manager (or in the Viewport) and select a different Spline type from the Attribute Manager’s Type menu. You will also find the Close Spline option in this settings. Enabling this option will close the selected Spline between its beginning and end points. Since Splines remain invisible for rendering they are suited for a wide variety of uses. For example, in conjunction with Generator objects, Spline curves can be used to define a cross-section or path. Splines can also be used in the creation of animations - to define a camera’s flight path through a structure, for example.

Intermediate points

For calculation by Generator objects or for animations, Spline curves are divided into short, straight segments, the length of which is defined by invisible Intermediate Points along the curve. The shorter these segments are, the more exact the curvature (e.g., of geometry created in conjunction with a Generator object). This also results in an increase of the number of points and any surfaces created. Therefore, it is wise to select a median level of accuracy in order avoid any unnecessary use of memory. There are different methods available for creating intermediate points. These methods can also be accessed in an active Spline Object’s settings:

Making intermediate points visible

In certain cases it may be necessary (or useful) to make Intermediate Points of a Spline curve visible, e.g., when projecting a Spline curve onto a Polygon object.

To do so, select the Spline Object and subsequently select the Current State to Object (Mesh | Spline menu) command. A new Spline will be created with intermediate points as actual points along the Spline. This command can also be used on Spline Primitives that have not been made editable.

Spline Segments

Spline curves can also consist of multiple segments, which offers a myriad of possibilities when creating objects in conjunction with Generator objects. If, for example, a segment lies within a closed curve it will be interpreted as hole/cavity. In any case, all curve segments will be generated as separate objects. First, create a Spline Primitive or create a Spline manually. Spline Primitives must first be made editable. Next, select all Splines that you want to connect into a single Spline curve with multiple segments - can be done by Ctrl/Cmd + clicking or dragging a selection box in the Object Manager. Subsequently select the Connect Objects + Delete command (Mesh | Conversion menu). A new object will be created, as shown in the image below. The original Splines will remain and can be deleted, if desired. The Connect Objects command can also be used on multiple polygonal objects to create a single object.

Finally, call up the Connect Objects + Delete command from the Mesh | Conversion menu. This also works with Polygon objects and creates a single object out of all selected objects, whereby the original Splines will be deleted. If you want to keep the Splines, select the Connect Objects command instead (also located in the Mesh | Conversion menu).

Joining segments

If the Splines that were connected are not closed, these gaps can be closed using the Join Segments command (Mesh | Spline). This is demonstrated at the right of the image above, in which a Formula and an Arc Spline were made editable and joined. Simply select the two points to be joined and subsequently select the Join Segment command. A continuous spline curve will be created; if the segments previously ran in different directions they will be reversed accordingly.

When joining segments, note that connecting two individual Splines with different interpolation methods will result in a single Spline with a single interpolation method. The same applies to the distribution of Intermediate Points. Hence, joining two segments can result in the shape of a Spline’s segments being altered, e.g., when a Linear Spline and a B-Spline are combined. Therefore, the best results are achieved if the Splines that are joined share a common interpolation method. The interpolation best suited for this is the Bezier Spline since it can combine both soft curves and hard edges.

Modeling with Splines and Generator objects

As already mentioned, Splines can be used in animations or in conjunction with Generator objects to model objects. Four types of Generator objects can be used with Splines to model objects. One thing that all of these Generator objects have in common is that the Spline must be made a Child object of that particular Generator object. Some Generator objects even require more than one Spline, in which case the Splines must also be placed in the correct hierarchical order under the Generator object (more about this later). All spline-based Generator objects offer options for closing the caps (end) surfaces, which can be applied when using closed curves or segments. Since this parameter is identical for all Generator objects we will only describe it in detail once.

Continue …