Creating a Sketch from Scan


This task will show you how to retrieve basic primitives (line, circle, ellipse) from planar scans.
Those primitives are created as sketches.
Open the SketchFromScans01.CATPart from the samples directory. 
  1. Click Sketch from Scan .

  2. The Sketch from Scan dialog box is displayed.

  3. Select the scans to want to process:
    • pick the first scan,
    • if you need to select more scans, either click anywhere in the Element field and pick the scan in the 3D viewer,
      or use the Multi-selection dialog box.

    If you pick one single scan, its name is displayed in the Element field,
    if you pick several scans, their number is displayed in the Element field.

    We have selected one closed scan (Quadrangle.11) and one open scan (Planar Sections.6)

  • Starting with R18, non-planar scans are accepted as input.
  • Starting with R18, meshes are accepted as input, to process their free edges.
  • You can select Geometrical sets, multi-outputs and Selection sets.
  • Use the contextual menu to clear all the selection or to visualize the list of the elements selected.
  •  or Click to visualize, Remove or Replace elements in the selection.

  1. The elements selected are highlighted and split points are proposed with their associated constraints.

    Those split points are not necessarily the endpoints of the primitives created.
    You can move them with the Ctrl key.

Starting with R18, Fixed split points are no longer proposed for closed scans,
thus reducing the number of created primitives and improving the output.
Fixed points are still proposed as end points of open scans.
To manage split points, make sure the Display option Constraint is selected.

You can manage split points:

  • manually:
    • pick a point of the scan to add a split point,
    • use the contextual menu to remove one or all points,
    • Select Impose tangency in the contextual menu to set a tangency constraint,
      or deselect Impose tangency to set a passage (Point) constraint.
  • automatically:
    • Select the Threshold check box and define its value.

      The Threshold acts like a sag value.
      The scan is cut into segments, according to the threshold value.
      The endpoints of those segments are potential split points.

      The Threshold check box is selected:

      The Threshold check box is not selected.
      Only the endpoints of the open scans are proposed as fixed split points.
  1. If necessary, change the Tolerance, that is the deviation allowed between
    the output elements and the points of the scan.

  2. Click Apply. An automatic computation of the sketch is carried out.
    You can see that the sketch on Quadrangle.11 is not complete.

  3. Create additional split points as follows.
    Click Apply. The sketch is now fully computed.

  4. Click More to display the global statistics in the dialog box:

    You can find:
    • the number of recognized elements,
    • the maximum deviation,
    • the mean deviation,
    • the percentage of points under Tolerance.
  5. Click to display local deviations results on the graphic area:

    The maximum and mean deviation, as well as the percentage of points under the required Tolerance,
    if any, are displayed in the graphic area, for each segment of points:
    • These statistics are displayed in green if the maximum deviation is lower than Tolerance,
    • They are displayed in red otherwise.
    • The percentage of points under the required tolerance are displayed only if the maximum
      deviation is higher than the tolerance
      (otherwise, the percentage is equal to 100% and its display is not relevant).
  6. Click OK. A sketch is created for each input scan.

  • its reference plane is that of the scan,
  • the required constraints are created in the sketch (if possible),
  • a fixed constraint is created and applied to each primitive.


If you set the Display option to Primitive, the constraints on split points are replaced
by recognition options on each scan segment. By default, an automatic recognition is proposed:

For each segment, you can impose another computation option, using the contextual menu: