Introductory Concepts

Below are listed a few information to generate or read a laser projection.

A laser projection is used in manufacturing shop floors. Basically, it projects the shape of the ply to be laid on the mold by the operator for better positioning.

The following formats are used to exchange information:

  • VIRTEK (.ply for plies information, .cal for calibration points information)
  • LPT .xml, with one file for plies information and one for target points information
  • LASERGUIDE (.lg)
  • LAP (.lpd, .cal).

This page discusses:

About Import/Export of External Data

For more information, see About the Import/Export of External Data in Composites Design User's Guide.

Laser Projection Export and Laser Projection File Reader support .ply, .cal, .xml, .lg, .lpd file formats.

You can open or save external data as reference objects in a PLM database. External references are VPM Documents used to store files.

At export, the 3D Shape is attached to the created or existing PLM external data reference. This enables you to find feature changes since last export. This also provides reusability of the PLM references for export purpose.

  • The root reference is a 3D physical product structure.
  • The VPM Document is attached to the root reference.
  • You have to manage the maturity of the 3D Shape and associated VPM Document.
  • You can create several documents with the same name, but their Product Lifecycle Management Identifier (PLMId) must be unique.

The commands listed below support import or export, both in a file-based system and a database. The last column lists features used for traceability when importing/exporting to a database.

Command Action Feature Used for Traceability Created Specific Values
Laser Projection Export Export Stacking Composites Laser Data
Laser Projection File Reader Import File - -

Laser Projection Export

When generating laser projection information, you can complete plies and points information with:

  • Additional Geometries, taken into account provided Laser Projection Export has been selected at their creation.
    Note: If Core Sample Scope is Stacking or Plies Group, only the plies under the core (if any),not the core itself, are taken into account. Added geometry found inside the core footprint is not elevated.
  • Stacking Texts defined in Composites Design or Composites Manufacturing Preparation.
  • Projected Texts if the option is selected in Laser Projection Preferences.

Laser Projection Export is done in two main steps: Discretization, then elevation.

  • As soon as entities are selected, all the curve-type geometries for each ply/cut-piece are discretized. They can be
    • Inner and outer ply contours
    • Additional curve-type geometries
    • Guide curves
    • Orders of drape.
  • Discretization points are elevated from the reference surface taking the cured or uncured thickness into account. The thickness is given by a core sample.
  • Sag, Step, and Angle can be customized as follows.
    • Sag (Shown by the double-headed arrow) is the maximum distance or deviation between the geometry (shown in blue) and the trajectory between the points (shown in green). The effect of a larger value is shown on the left, of a smaller value on the right.

      A larger sag value reduces the number of points to the extent where the step value is reached. A smaller sag value increases the amount of points to meet the sag value. As the number of points grows, so does the size of the output file.
    • Step (shown by the double-headed arrow) is the minimum linear distance between any 2 given points. The effect of a larger value is shown on the left, of a smaller value on the right.

      A smaller step value adds more points to ensure that all steps meet the defined minimum distance. Smaller step distances can improve the accuracy of plies in areas where plies are consecutively dropping off (transition zones). The default value is high enough to avoid adding unnecessary points.
      Recommendation: Adjust the value as required.
    • Angle is the maximum angle approximation between adjacent trajectories. Allowed values are between 12 and 45 degrees. Points are added or removed based on the angle value where sag and step values are too large for high curvature geometry and do not provide the proper resolution. Decreasing the sag and step values adds significantly more points uniformly to all geometries concerned and is not dealt with in most cases. In the example below, when the angle value is 45 degrees (default value), the trajectory is not optimally smooth (shown in green). When the angle value is decreased to 30 degrees, points are added and the trajectory is smoother (shown in green).

  • The rosette is transferred at the seed point, if any, at the computed central point otherwise.

As soon as a discretization is done, a preview tree displays the elements to export and the projectors, enabling you to verify the elements.

Laser Projection File Reader

As in export, a preview tree displays the read elements.

Preview Tree

The preview tree displays the elements to export or to read in nodes, according to the options selected in Laser Projection Preferences.

Notes:
  • The information in the preview tree is very similar in Laser Projection Export and Laser Projection File Reader. However, less information is provided at reading (contour information or projector information, for example).
  • Select a node in the preview tree to verify the elements in the node. This does not select the elements for export.

Each element node corresponds to:

  • A LAYER level in VIRTEK format.
  • An xml node level in LPT format.
  • A PLY command in LASERGUIDE format.
  • A DRAWING/LAYER/GROUP in LAP format.

Ply and cut-piece nodes contain detail nodes for each element:

  • Rosette
  • Contours
  • Guide curve
  • Order of drape contours
  • Additional geometries:
    • Like ply geometries, all visible curve-type geometries found in Additional Geometries Sets are discretized and exported.
    • Closed curves are marked as Additional contours in the corresponding node.
    • Open curves are marked as Additional curves.
    • In all formats, the curves and contours are exported as the other ply geometries (contours, seed curves, ...).
  • Stacking Texts are inserted in the preview tree, and exported in the file, at the same position they have in the 3D area tree. The type of the text is given between brackets.
    • Text (projected) if the text is with 3D representation and if 3D option is chosen as its laser projection type. It is projected on the mold alongside the other geometries.
      • For VIRTEK format:
        • Text (information) if Information option is chosen as its laser projection type. It is displayed on the console.
        • Text (query) if Query option is chosen as its laser projection type. It is displayed on the console and validation is requested.
        • Text (LED) if LED option is chosen as its laser projection type. It is displayed on the LED display.
      • For LPT format:
        • Text (information) if Information, Query, or LED option is chosen as its laser projection type. It is displayed on the console.
        • Ignored (no node) if 3D Stacking Text is outside plies or cut-pieces.
      • For LASERGUIDE format:
        • Comment if Information, Query, or LED option is chosen as its laser projection type.
        • Ignored (no node) if 3D Stacking Text is outside plies or cut-pieces.
      • For LAP format: Ignored (no node) if Information, Query, or LED option is chosen as its laser projection type or if Stacking Text is outside plies or cut-pieces.
    • Automatic text when Projected Text is selected.

      The text is added under each ply or cut-piece node in the preview tree and therefore in the corresponding LAYER (VIRTEK format), xml node (LPT format), PLY block (LASERGUIDE format) or GROUP (LAP format).

      The text is displayed in the preview tree as Automatic Text (projected).

      It is visible in the 3D area when the node is selected (or its parent ply node).

      3D representation is the same as a Stacking Text with 3D representation and placed below the transferred rosette, in the same plane as the rosette and along the x direction of the rosette.

Note: The result font of 3D texts projected by the actual projector may be different in shape and length, but the height remains the same. Polygonal representations are the same.

Display Options

Display options are proposed in Laser Projector, Laser Projection Export and Laser Projection File Reader. Although similar, they vary from one command to the other.

  • Normal Vectors . They are colored green, yellow, or red depending on the angle they form with the ray line from the projector to the discretization point. When no projector is available, the vectors are colored green. When several projectors are available, the color of the normal vector is that of the shortest ray with an angle below the warning angle. The aim is to verify that the plies and cut-pieces can be projected, not to show all solutions.
  • Original Contours of the ply or cut-piece on the reference surface to be compared with the discretized ones.
  • Laser Projection Rays that are the lines from the projector to the discretization points. When several projectors are available, for each discretization point, the projector considered is the closest projector with a ray-normal angle smaller than the warning angle.
  • Vertical Limit Planes with respect to the maximum vertical angle of the projector.
  • Horizontal Limit Planes with respect to the maximum horizontal angle of the projector.
  • Size of Normal Vectors
  • Color of the Projector Rays and of the Projected Elements

Note: Not all options are available when reading files.

Examples of Files

Note: For a better readability, trailing zero is displayed when applicable in the selected format.

Extract of a .ply file

LAYER START Plies Group.1
LAYER START Sequence.1
LAYER START Ply.1
START Ply.1
P 3
242.604 62.809 -72.223 0 0.652 0.758
222.679 48.544 -58.311 0 0.698 0.716
212.716 55.676 -65.267 0 0.676 0.737
P 31
212.5 112.41 -105.855	0 0.474 0.88
150 112.41 -105.855	0 0.474 0.88
87.5 112.41 -105.855	0 0.474 0.88
25 112.41 -105.855	0 0.474 0.88
25 102.132 -100.009	0 0.514 0.858
25 92.194 -93.747	0 0.552 0.834
25 82.596 -87.102	0 0.586 0.81
25 73.331 -80.102	0 0.619 0.786
25 67.332 -75.249	0 0.639 0.769
25 61.471 -70.254	0 0.658 0.753
25 50.139 -59.856	0 0.693 0.721
25 40.781 -50.488	0 0.721 0.693
25 31.77 -40.748	0 0.747 0.665
25 23.095 -30.643	0 0.77 0.638
25 14.748 -20.18	0 0.793 0.61
87.5 14.748 -20.18	0 0.793 0.61
150 14.748 -20.18	0 0.793 0.61
212.5 14.748 -20.18	0 0.793 0.61
275 14.748 -20.18	0 0.793 0.61
275 23.095 -30.643	0 0.77 0.638
275 31.77 -40.748	0 0.747 0.665
275 40.781 -50.488	0 0.721 0.693
275 50.139 -59.856	0 0.693 0.721
275 61.471 -70.254	0 0.658 0.753
275 67.332 -75.249	0 0.639 0.769
275 73.331 -80.102	0 0.619 0.786
275 82.596 -87.102	0 0.586 0.81
275 92.194 -93.747	0 0.552 0.834
275 102.132 -100.009	0 0.514 0.858
275 112.41 -105.855	0 0.474 0.88
212.5 112.41 -105.855	0 0.474 0.88
END Ply.1
LAYER END Ply.1
LAYER END Sequence.1

Extract of .cal file

4
T 1 D 25 162.459 -126.061
T 2 D 275 162.459 -126.061
T 3 D 160.121 71.803 -104.222
T 4 D 222.679 48.404 -58.454

Extract of .xml file (plies information)

<?xml version="1.0"?>
-<XML>
-<PART TopLayers="3" HIGHESTPLY="135" USEASSIGNEDLASERS="" DEFAULTLASER="0" MODIFIED="2016-03-03-11.28.13" INVERTNORMALS="" DBVERSION="" STATUS="" NAME="vmua">
-<PLY NAME="L1-Ply.40">
-<PLY NAME="L2-Ply.40:0" LASERNUMBER="1">
<POINT NAME="" KVAL="-0.727" JVAL="-0.687" IVAL="0" ZVAL="-95.185" YVAL="69.445" XVAL="183.016" NUMBER="1"/>
<POINT NAME="" KVAL="-0.727" JVAL="-0.687" IVAL="0" ZVAL="-70.899" YVAL="43.751" XVAL="147.661" NUMBER="2"/>
<POINT NAME="" KVAL="-0.727" JVAL="-0.687" IVAL="0" ZVAL="-22.326" YVAL="-7.637" XVAL="218.372" NUMBER="3"/>
</PLY>
-<PLY NAME="L3-Ply.40:1" LASERNUMBER="1">
<POINT NAME="" KVAL="-0.567" JVAL="-0.824" IVAL="0" ZVAL="-10.856" YVAL="-7.371" XVAL="295" NUMBER="1"/>
<POINT NAME="" KVAL="-0.644" JVAL="-0.765" IVAL="0" ZVAL="-41.197" YVAL="15.753" XVAL="295" NUMBER="2"/>
<POINT NAME="" KVAL="-0.721" JVAL="-0.693" IVAL="0" ZVAL="-68.791" YVAL="41.541" XVAL="295" NUMBER="3"/>
<POINT NAME="" KVAL="-0.811" JVAL="-0.585" IVAL="0" ZVAL="-97.36" YVAL="75.621" XVAL="295" NUMBER="4"/>
<POINT NAME="" KVAL="-0.855" JVAL="-0.519" IVAL="0" ZVAL="-109.87" YVAL="94.472" XVAL="295" NUMBER="5"/>
<POINT NAME="" KVAL="-0.896" JVAL="-0.443" IVAL="0" ZVAL="-121.294" YVAL="114.414" XVAL="295" NUMBER="6"/>
<POINT NAME="" KVAL="-0.958" JVAL="-0.287" IVAL="0" ZVAL="-137.171" YVAL="151.744" XVAL="295" NUMBER="7"/>
<POINT NAME="" KVAL="-0.981" JVAL="-0.192" IVAL="0" ZVAL="-143.754" YVAL="171.65" XVAL="295" NUMBER="8"/>
<POINT NAME="" KVAL="-0.997" JVAL="-0.081" IVAL="0" ZVAL="-147.64" YVAL="192.329" XVAL="295" NUMBER="9"/>
<POINT NAME="" KVAL="-0.999" JVAL="0.039" IVAL="0" ZVAL="-148.088" YVAL="212.618" XVAL="295" NUMBER="10"/>
<POINT NAME="" KVAL="-0.985" JVAL="0.172" IVAL="0" ZVAL="-145.959" YVAL="232.783" XVAL="295" NUMBER="11"/>
<POINT NAME="" KVAL="-0.935" JVAL="0.356" IVAL="0" ZVAL="-138.644" YVAL="259.427" XVAL="295" NUMBER="12"/>
<POINT NAME="" KVAL="-0.853" JVAL="0.522" IVAL="0" ZVAL="-126.175" YVAL="284.729" XVAL="295" NUMBER="13"/>
<POINT NAME="" KVAL="-0.853" JVAL="0.522" IVAL="0" ZVAL="-126.175" YVAL="284.729" XVAL="5" NUMBER="14"/>
<POINT NAME="" KVAL="-0.935" JVAL="0.356" IVAL="0" ZVAL="-138.644" YVAL="259.427" XVAL="5" NUMBER="15"/>
...</PLY>
<TEXT NAME="1" PT3ZVAL="26.246" PT3YVAL="-59.025" PT3XVAL="147.661" PT2ZVAL="-22.326" PT2YVAL="-7.637" PT2XVAL="218.372" PT1ZVAL="-70.899" PT1YVAL="43.751" PT1XVAL="147.661" VALUE="Ply.40"/>
</PLY>
</PART>
</XML>

Extract of .xml file (target points information)

<?xml version="1.0"?>
-<XML>
-<TOOL TOOLCODE="" STATUS="" COORDSYSTEM="RIGHT" MODIFIED="2016-03-03-11.28.14" NAME="vmub" DBVERSION="">
<TARGET NAME="Point.1" SEARCHRATIO="1.0" ZVAL="-126.061" YVAL="162.459" XVAL="275" DVAL="Y" LASERNUMBER="1" NUMBER="1"/>
<TARGET NAME="Point.19" SEARCHRATIO="1.0" ZVAL="-101.832" YVAL="68.518" XVAL="195.779" DVAL="Y" LASERNUMBER="1" NUMBER="2"/>
<TARGET NAME="Point.20" SEARCHRATIO="1.0" ZVAL="-80.933" YVAL="43.099" XVAL="79.575" DVAL="Y" LASERNUMBER="1" NUMBER="3"/>
<TARGET NAME="Point.21" SEARCHRATIO="1.0" ZVAL="-151.805" YVAL="197.793" XVAL="73.237" DVAL="Y" LASERNUMBER="1" NUMBER="4"/>
<TARGET NAME="Point.22" SEARCHRATIO="1.0" ZVAL="-151.629" YVAL="194.743" XVAL="182.877" DVAL="Y" LASERNUMBER="1" NUMBER="5"/>
<TARGET NAME="Point.8" SEARCHRATIO="1.0" ZVAL="-76.567" YVAL="38.393" XVAL="147.661" DVAL="Y" LASERNUMBER="1" NUMBER="6"/>
</TOOL>
</XML