Skip to main content

Basic Ops

Overview

Boolean Modes

The Basic Ops operator is a versatile node that provides multiple spline-processing functions in a single tool. It allows for procedural transformations, filtering, segmentation, and other modifications within RailClone. This operator eliminates the need for manual spline adjustments in 3ds Max by enabling parametric control directly in the RailClone Style Editor.

Usage

  1. Add the Basic Ops Operator: Drag the Basic Ops node into the RailClone Style Editor.
  2. Select an Operation: Choose the desired spline operation from the Operation dropdown.
  3. Adjust Parameters: Modify the available settings based on the selected operation.
  4. Use as Input for Further Processing: Connect the modified spline to other RailClone nodes or generators.

Interface & Parameters

The Basic Ops node includes the following Operations:

Combine

The RailClone Combine Operator UICombine Operator

Merges multiple splines into a single object while maintaining sub-spline structure.

  • No additional parameters.

Transform

The RailClone Transform Operator UITransform Operator

Applies translation, rotation, and direction reversal to a spline.

  • Translation (X, Y, Z): Moves the spline along the respective axes.
  • Rotation (X, Y, Z): Rotates the spline around the specified axes.
  • Reverse: Flips the direction of the spline.
  • Curve Steps: Defines the number of steps used for curved segments, affecting smoothness.

Fillet

The RailClone Fillet Operator UIFillet Operator

Rounds off Corner and Bezier-Corner vertices to create smooth transitions

  • Radius: Sets the fillet radius (amount of rounding).
  • Set Mat.ID: Assigns a material ID to the newly created fillet segments.

Chamfer

The RailClone Chamfer Operator UIChamfer Operator

Creates a straight-edge bisected transition at Corner and Bezier-Corner vertices.

  • Amount: Defines the chamfer distance.
  • Set Mat.ID: Assigns a material ID to the chamfered segments.

Filter by Mat. ID

The RailClone Filter Material ID  Operator UIFilter Material ID Operator

Includes or excludes spline sections based on their material ID

  • Mode:
    • Include: Only the specified Mat.ID sections remain.
    • Exclude: The specified Mat.ID sections are removed.
  • Mat.ID: Specifies the material ID to filter.

Change Mat. ID

The RailClone Change Material ID Operator UIChange Material ID Operator

Modifies the material ID of selected spline sections.

  • Mode:
    • Fixed: Assigns a single material ID.
    • Sequence: Cycles through multiple material IDs based on segment order.
  • Values: Specifies the new material ID(s) to assign. In sequence mode, separate multiple IDs with commas.

Divide Evenly

The RailClone Divide Operator UIDivide Operator

Inserts evenly spaced vertices along the spline.

  • Divide by:
    • Distance: Places vertices at regular intervals based on the set distance.
    • Count: Specifies the total number of divisions.
  • Vertex Type: Defines the type of new vertices (Corner, Bezier-Corner).
  • Mode:
    • Distance: Uses a fixed distance for divisions.
    • Adaptive: Adjusts divisions based on spline curvature.
  • Adaptive To: Specifies how adaptive mode applies (e.g., Any curvature).
  • Reverse: Reverses the placement order of new vertices.
  • Set Mat.ID: Assigns a material ID to the newly created segments.
  • Padding: Adds an offset at the start and end before placing the first and last vertex.

Divide Markers

The RailClone Divide by Markers Operator UIDivide by Markers Operator

Adds a corner vertex at existing markers added using the RCSpline modifier, useful for defining sections.

  • From ID (Range 0-99999): Defines the marker ID range to be used.
  • Modifier: Determines which modifier to use for marker IDs. Modifiers are counted from the top of the modifier stack downwards.
  • Copy User ID to Mat.ID: Copies marker IDs into the segment's material ID.
  • Propagate ID Until Next Marker: Extends marker IDs across sections until a new marker is encountered.
  • Set Mat.ID: Assigns a material ID to the newly created segments.

Break

The RailClone Break Operator UIBreak Operator

Splits the spline at specific vertex types.

  • Vertex Type: Defines which vertices cause a break (Corner, Bezier-Corner, All).
  • Filter Mat.ID: Restricts breaking to specific material IDs.

Padding

The RailClone Padding Operator UIPadding Operator

Trims splines by applying padding at the start and/or end.

  • Apply To:
    • Start: Trims the beginning of each sub-spline.
    • End: Trims the end of of each sub-spline.
    • Start/End: Applies padding to both ends of each sub-spline.
    • First SubSpline Trims the beginning of the first sub-spline.
    • Last SubSpline Trims the end of the last sub-spline.
    • Last SubSpline Trims the beginning of the first sub-spline and the end of the last sub-spline. Intermediary sub-splines are not affected.
  • Absolute: Defines a fixed padding amount.
  • Relative: Specifies padding as a percentage of the spline length.

Normalize

The RailClone Normalize Operator UINormalize Operator

Adjusts spline resolution by either segment length or knot count

  • Section Length: Defines the uniform segment length along the spline.
  • Knot Count: Specifies the number of divisions along the spline.
  • Linear Sections: Converts curved sections to straight segments.

Replace Vertex

The RailClone Replace Vertex Operator UIReplace Vertex Operator

Changes or removes specific vertex types.

  • Corner, Bezier, Bezier-Corner, Smooth, Interpolated: Each type can be individually modified:
    • Not Change: Leaves the vertex unchanged.
    • Remove: Deletes the specified vertex type.
    • Convert: Converts from one type to another.

Flatten

The RailClone Flatten Operator UIFlatten Operator

Forces a spline to become planar along a selected axis.

  • Axis: Defines the axis to flatten along (X, Y, or Z).

Tips & Best Practices

  • Combine is useful for merging multiple splines into a single structure while keeping sub-splines intact.
  • Divide Evenly before applying transformations ensures consistent vertex distribution.
  • Break is useful when procedural segmentation is required, such as isolating elements for modular designs.
  • Change Mat. ID can be used to dynamically assign material IDs for targeted procedural geometry.
  • Normalize is recommended before other operations to standardize spline density.
  • Flatten is helpful for ensuring all splines are aligned to a consistent plane before further processing.
  • Padding is useful for trimming unwanted sections at the start or end of a spline before further transformations.