Creating Parallel Curves

You can create a curve that is parallel to a reference curve. Each point of the parallel curve is located at a distance to the input curve equal to the offset value defined for this point.

This task shows you how to:


Before you begin: Create a 3D shape containing a curve.
Related Topics
More about Parallel Curves

Create the Parallel Curve

You can create a curve that is parallel to an existing curve at a specified offset distance.

  1. Click Parallel Curve in the Wireframe toolbar (Curve Offsets sub-toolbar).

    The Parallel Curve Definition dialog box appears.

  2. In the Curve box, select the reference curve to be offset.

  3. In the Support box, select the plane or surface on which the reference curve lies.

  4. Specify the offset of the parallel curve either by:


    • entering a value or using the graphic manipulator in the Constant box.

    • selecting a point in the Point box (in both Geodesic and Euclidean mode). In that case, Constant is grayed.

  5. Choose the Parallel mode to create the parallel curve.


    • Euclidean: the distance between both curves will be the shortest possible one, regardless of the support. If you select this mode, you can choose to offset the curve at a constant distance from the initial element, or according to a law. In this case, you need to select a law as defined in Creating Law. The law can be negative, providing the curves are curvature continuous.
    Warning:
    • It is advised to use curvature continuous laws.
    • It is possible to create a parallel curve with a law that reverses (which means becoming either positive or negative) only on a curve that is tangency continuous.

    • Geodesic: the distance between both curves will be the shortest possible one, taking the support curvature into account. In this case, the offset always is constant to every point on the curve and you do not need to select a corner type.

  6. Select Parallel corner type (useful for curves presenting sharp angles).

    Warning: This option is disabled when the Geodesic mode is selected.

    • Sharp: the parallel curve takes into account the angle in the initial curve.

      By default, the Parallel corner type is Sharp.



    • Round: the parallel curve is rounded off as in a corner.

    Warning: This type is only effective with acute angles, not with obtuse or re-entrant angles. It corresponds to the trace left by a ball rolling on a profile.

  7. Click Preview.

    The parallel curve is displayed on the support surface and normal to the reference curve.

  8. Click OK to create the parallel curve.

    The curve (identified as Parallel.xxx) is added to the specification tree.

    Parallel curve defined by an constant offset value

    Parallel curve defined by a passing point

Smooth the Curve

You can smoothen parallel curves by defining continuity.

  • You can smooth the curve by selecting either:


    • None: deactivates the smoothing result

    With a support surface:


    • Tangency: enhances the current continuity to tangent continuity
    • Curvature: enhances the current continuity to curvature continuity

      You can specify the maximum deviation for G1 or G2 smoothing by entering a value or using the spinners.

      In the case of an Euclidian parallel curve, only small discontinuities are smoothed, especially discontinuities that are introduced during the parallel operation.

      Moreover, a topology simplification is automatically performed for G2 vertices: cells with a curvature continuity are merged.

    Without support surface:


    • 3D Smoothing: the smoothing is performed without specifying any support surface. As a consequence, the resulting smoothed curve has a better continuity quality and is not exactly laid down on the surface. As a consequence, you may need to activate the Tolerant laydown option. Refer to Customizing section: General. This option is available if you previously select the Tangency or Curvature smoothing type.
      With 3D smoothing option selected

      With 3D smoothing option cleared


  • None: deactivates the smoothing result

Use a Law

You can define a law to create parallel curves.

  1. Click Law... to display the Law Definition dialog box. In this case, you need to select a law as defined in Creating Law.

    The 2D viewer enables you to preview the law evolution before applying it.



    The Law Viewer allows you to:


    • visualize the law evolution and the maximum and minimum values,
    • navigate into the viewer by panning and zooming (using the mouse),
    • trace the law coordinates by using the manipulator,
    • change the viewer size by changing the panel size
    • reframe on by using the viewer contextual menu
    • change the law evaluation step by using the viewer contextual menu (from 0.1 (10 evaluations) to 0.001 (1000 evaluations)).

  2. Enter a Start value and an End value.

  3. Choose the law type.

    Four law types are available:


    • Constant: a regular law, only one value is needed.

    • Linear: a linear progression law between the Start and End indicated values.

    • S type: an S-shaped law between the two indicated values. For this type, you need to define a second value. The distance will vary between these two values.

    • Advanced: allowing to select a Law element as defined in Creating Law.

      Warning: When an advanced law presents vertical tangencies inside its definition domain, disconnecting the law and the input wire at this position may enable to improve the precision of the result.

  4. Select the Inverse law check box to reverse the law as defined using the above options.

  5. Click Close to return to the Parallel Curve Definition dialog box.

Warning: When creating a parallel curve with the following characteristics:
  • non linear input curve
  • non planar support
  • radius law which vanishes into a flat shape, this may lead to quality defects in the zone such as angular discontinuities:

    To be able to create the parallel curve, add a small offset value to the radius law (value higher or equal to 0.001mm) so that it does no longer get null.