#ifndef PROMFGELEMTOOLMTNCLCMD_H
#define PROMFGELEMTOOLMTNCLCMD_H
/*
Creo Parametric TOOLKIT declarations related to specification of tool motion
of type "CL Command" (PRO_TM_TYPE_CL_COMMAND).
*/
#include <ProToolkit.h>
PRO_BEGIN_C_DECLS
/*============================================================================
(1) Element tree
-- PRO_E_TOOL_MTN
|
|-- PRO_E_TOOL_MTN_REF_ID
|
|-- PRO_E_TOOL_MTN_TYPE
|
|-- PRO_E_TOOL_MTN_CL_CMD
| |
| |-- PRO_E_TOOL_MTN_CL_CMD_LOC_TYPE
| |
| |-- PRO_E_TOOL_MTN_CL_CMD_STR
| |
| |-- PRO_E_TOOL_MTN_CL_CMD_PARAM
| |
| |-- PRO_E_TOOL_MTN_CL_CMD_GEOM_REF
| |
| |-- PRO_E_TOOL_MTN_CL_CMD_SRF_OPT
| |
| |-- PRO_E_TOOL_MTN_CL_CMD_ON_EXIST_PNT
|
|-- PRO_E_TOOL_MTN_PARENT_REF_ID
===============================================================================
(2) Elements table
----------------------------------------------------------------------------------------
Element Id Element Name Data Type Valid Values
----------------------------------------------------------------------------------------
PRO_E_TOOL_MTN Tool Motion Compound Note-1
PRO_E_TOOL_MTN_REF_ID Tool Motion Id PRO_VALUE_TYPE_INT Note-2
PRO_E_TOOL_MTN_TYPE Tool Motion Type PRO_VALUE_TYPE_INT Note-3
PRO_E_TOOL_MTN_CL_CMD Cl Command Compound
PRO_E_TOOL_MTN_CL_CMD_LOC_TYPE CL Command Location Type PRO_VALUE_TYPE_INT Note-4
PRO_E_TOOL_MTN_CL_CMD_STR CL Command String PRO_VALUE_TYPE_WSTRING Note-5
PRO_E_TOOL_MTN_CL_CMD_PARAM CL Command Parameter PRO_VALUE_TYPE_DOUBLE Note-6
PRO_E_TOOL_MTN_CL_CMD_GEOM_REF CL Command Geometry Reference PRO_VALUE_TYPE_SELECTION Note-7
PRO_E_TOOL_MTN_CL_CMD_SRF_OPT CL Command Surface Option PRO_VALUE_TYPE_INT Note-8
PRO_E_TOOL_MTN_CL_CMD_ON_EXIST_PNT CL Command On Existing Point PRO_VALUE_TYPE_INT Note-9
PRO_E_TOOL_MTN_PARENT_REF_ID Parent Reference Id PRO_VALUE_TYPE_INT Note-10
========================================================================================
(3) Notes
Note-1 : Tool motion definition.
PRO_E_TOOL_MTN is a member of PRO_E_TOOL_MTN_ARR array.
Note-2 : Tool motion id.
Internal use only. Should not be added or modified.
Note-3 : Tool motion type - PRO_TM_TYPE_CL_COMMAND
Values defined by ProTmType.
Mandatory.
Note-4 : CL command location types:
PRO_CL_CMD_LOC_TYPE_SEL - CL command position is on tool path
(PRO_E_TOOL_MTN_CL_CMD_PARAM must be assigned);
PRO_CL_CMD_LOC_TYPE_BEGIN - CL command position is at the beginning
of tool path;
PRO_CL_CMD_LOC_TYPE_CURR - CL command position at the last point of
the previous motion.
PRO_CL_CMD_LOC_TYPE_DTM_PNT - CL command position is at the projection of given
point on tool path
(NCL_CMD_LOC_TYPE_DTM_PNT must be defined);
PRO_CL_CMD_LOC_TYPE_ON_SURFACE - CL command positions are at intersections of given
surface and tool path
(PRO_CL_CMD_LOC_TYPE_ON_SURFACE must be defined).
Mandatory.
Note-5 : User specified string.
Mandatory.
Note-6 : Range [0., 1.].
Mandatory for PRO_CL_CMD_LOC_TYPE_SEL location type.
Note-7 : Reference to a datum point or a surface.
Mandatory for NCL_CMD_LOC_TYPE_DTM_PNT and PRO_CL_CMD_LOC_TYPE_ON_SURFACE
location types.
Note-8 : CL command surface options:
PRO_CL_COMMAND_ON_FIRST_PASS - only the first pass is considered for
surface/tool path intersection;
PRO_CL_COMMAND_ON_LAST_PASS - only the last pass;
PRO_CL_COMMAND_ON_ALL_PASSES - all passes.
Mandatory for NCL_CMD_LOC_TYPE_ON_SURFACE.
Note-9 : PRO_B_TRUE - place the cl command at the nearest existing point of
the tool path;
PRO_B_FALSE - new point will be added.
Mandatory for PRO_CL_CMD_LOC_TYPE_DTM_PNT.
Note-10 : Tool motion id of the tool motion referred by this cl command tool motion.
Mandatory for PRO_CL_CMD_LOC_TYPE_SEL.
==============================================================================*/
PRO_END_C_DECLS
#endif /* PROMFGELEMTOOLMTNCLCMD_H */