Visualization Element 'Path3D'

Symbol:

Tag: Special Controls

The visualization element Path3D graphically displays the curves of two independent records as a 3D path. It is specially designed for use with CODESYS SoftMotion CNC in order to display the trajectory of a machine tool or a robot. The programmed path (path) and the path actually traveled (track) is visualized.

Although the visualization element is designed for use with CODESYS SoftMotion CNC, it can also be used to display any other record. In this case the application must provide the path data. The sample application 3D Path Generator, which is available in the CODESYS Store, shows how these data can be generated.

If the element is used together with SoftMotion CNC, then function blocks from the library SM3_CNC_Visu help to generate the data from the path and track. These function blocks are used by the sample project CNC_File_3DPath, which is stored in the installation directory of CODESYS.

  • SMC_PathCopier

  • SMC_PathCopierCompleteQueue

  • SMC_PathCopierFile

  • SMC_PositionTracker

A description of the function blocks can be found in the Library Manager in the SM3_CNC_Visu library.

Note

The element does not work with the CODESYS HMI display variant.

See also

Element properties

Element name

Example: GenElemInst_1

Type of element

Path3D

Element property 'Position'

The position defines the location and size of the element in the visualization window. These are based on the Cartesian coordinate system. The origin is located at the upper left corner of the window. The positive horizontal x-axis runs to the right. The positive vertical y-axis runs downwards.

X

X coordinate of the upper left corner of the element

Specified in pixels.

Example: 10.

Y

Y coordinate of the upper left corner of the element

Specified in pixels.

Example: 10.

Width

Specified in pixels.

Example: 150

Height

Specified in pixels.

Example: 30

Note

You can also change the values by dragging the box symbols () to other positions in the editor.

See also

Path description

Path data (VisuStruct3DTrack)

Variable of the type VisuStruct3DTrack, which is declared in the IEC code. Example: PLC_PRG.pc.vs3dt. A description of the structure can be found in the library manager in the library VisuElem3DPath.library.

The data structure describes a path or track through a certain number of points. The points are determined and buffered by the application. The track typically displays the last n positions, so that only a certain part of them is ever displayed at any one time. VisuStruct3DTrack.pProjection is a variable that is set by the visualization element and contains information about the path/track projection. It can be read (only) by the application. In addition, the methods Projection.Apply or .ApplyV can be used in order to see whether the transformed position lies inside or outside the visualization display area, which is defined by Projection.ElementRect.

Path color

Color of the path drawn

Path line width

Path line width in pixels, e.g.: "2"

Style of boundary points

Display of the points between two successive objects in the path

  • End points are not displayed

  • End points are marked with a circle

  • End points are marked with a cross

  • End points are marked with a plus

Track description

The track data are structured in exactly the same way as the path data: VisuStruct3DTrack

Track data (VisuStruct3DTrack)

Variable of the type VisuStruct3DTrack, which is declared in the IEC code. Example: PLC_PRG.pc.vs3dt. A description of the structure can be found in the library manager in the library VisuElem3DPath.library.

Track color

Color of the track drawn

Track line width

Track line width in pixels, e.g.: "2"

Camera control

The camera position for the 3D mode is controlled with a reference to the external data structure. This structure allows the following operations:

  • Shifting to the left/to the right/upwards/downwards

  • Rotation around the X/Y/Z axis

  • Resetting of the view at X/Y, Y/Z or Z/X level, so that the path and the track are completely visible.

Control data (VisuStruct3DControl)

Variable of the type VisuStruct3DControl, which is declared in the IEC code. Example: PLC_PRG.pc.vs3dc.

A description of the structure can be found in the library manager in the library VisuElem3DPath.

The values can be set via the application itself or via the visualization element ControlPanel. The library VisuElem3DPath contains ready-to-use visualization frames that provide a possible user interface for these data.

Additional aspects

Coordinate system

: The coordinate system is displayed

Grid

: Grid lines are displayed

Grid color

Color of the grid lines

Highlighting

Individual parts of the path can be visually highlighted. This is typically used to mark the already processed part of a track with a different color. Each point in the path is given a unique ID, which in the case of a CNC editor is linked with the object ID on which the point lies. This ID ("highlight ID") can be specified via the application so that dynamic elements/parts of the track can be highlighted.

Highlight mode

Select one of the following highlight modes:

  • Only the element whose ID corresponds to the value of the variable is highlighted.

  • All elements whose ID (linked with the object ID in the case of a CNC editor) is smaller than or equal to the value in Variable are highlighted.

Variable

Project variable that specifies the ID of an element. Example: PLC_PRG.iVarElementID. This "highlight ID" is taken into account for the setting of the highlight mode. The variable must be set in the IEC application.

Highlight color

Element look

Frame line width

Width of the frame around the element, in pixels, for example: "1"

Frame line style

Select one of these style types for the frame line:

  • Solid

  • Dashes

  • Dots

  • Dash Dot

  • Dash Dot Dot

  • Hollow

Transparent background

: The background of the element is displayed transparently.

: The background of the element is displayed in the defined background color.

Background color

These properties are available only when you have selected the Preview: Support client animations and overlay of native elements option in the Visualization Manager.

Animation duration

Defines the duration (in milliseconds) in which the element runs an animation

  • Variable (integer value)

    Example: Menu.tContent with VAR tContent : INT := 500; END_VAR

  • Integer literal

    Example: 500

Animatable properties

  • Absolute movement, Movement, X, Y

  • Absolute movement, Rotation

  • Absolute movement, Interior rotation

  • Absolute movement, Exterior rotation

The animated movement is executed when at least one value of an animatable property has changed. The movement then executed is not jerky, but is smooth within the specified animation duration. The visualization element travels to the specified position while rotating dynamically. The transitions are smooth.

Move to foreground

Moves the visualization element to the foreground

Variable (BOOL)

Example: bIsInForeground with VAR bIsInForeground : BOOL := FALSE; END_VAR

TRUE: At runtime, the visualization element is displayed in the foreground.

FALSE: At runtime, the visualization element is displayed in the layer where it was inserted in the visualization editor.

See also

Element property 'Access rights'

Requirement: User management is set up for the visualization.

Access rights

Opens the Access rights dialog. There you can edit the access privileges for the element.

Status messages:

  • Not set. Full rights.: Access rights for all user groups : operable

  • Rights are set: Limited rights: Access is restricted for at least one group.

See also