#ifndef PROMOVEH #define PROMOVEH #include <ProToolkit.h> #include <ProDirection.h> #include <ProFeature.h> PRO_BEGIN_C_DECLS /*****************************************************************************\ Feature element tree PRO_E_FEATURE_TREE | |--PRO_E_FEATURE_TYPE | |--PRO_E_SRF_TRANS_TYPE | |--PRO_E_STD_FEATURE_NAME | |--PRO_E_SRF_TR_SURF_SELECTION | |--PRO_E_MOVE_WITH_COPY | |--PRO_E_MOVE_GEOM_TRF_ARR | |--PRO_E_MOVE_GEOM_TRF | |--PRO_E_SRF_TR_MOVE_TYPE |--PRO_E_DIRECTION_COMPOUND |--PRO_E_SRF_TR_VAL_ELEM Feature elements table ------------------------------------------------------------------------------------------------ Element Id Element Name Data Type ------------------------------------------------------------------------------------------------ PRO_E_FEATURE_TYPE Feature Type PRO_VALUE_TYPE_INT PRO_E_SRF_TRANS_TYPE Transform Type PRO_VALUE_TYPE_INT PRO_E_STD_FEATURE_NAME Feature Name PRO_VALUE_TYPE_WSTRING PRO_E_SRF_TR_SURF_SELECTION Surface Selection PRO_VALUE_TYPE_SELECTION ( Multivalued Element ) PRO_E_MOVE_WITH_COPY move with copy PRO_VALUE_TYPE_INT PRO_E_MOVE_GEOM_TRF_ARR Sets Array PRO_E_MOVE_GEOM_TRF Set Compound PRO_E_SRF_TR_MOVE_TYPE move type PRO_VALUE_TYPE_INT PRO_E_DIRECTION_COMPOUND Direction Compound PRO_E_SRF_TR_VAL_ELEM offset_or_angle PRO_VALUE_TYPE_DOUBLE ------------------------------------------------------------------------- Table Move:1 : Common element for all type of Move and it's value ------------------------------------------------------------------------- | Element Id | Value | ------------------------------------------------------------------------- | | | | PRO_E_FEATURE_TYPE | = PRO_FEAT_SRF_MDL | | | | ------------------------------------------------------------------------- | | | | PRO_E_SRF_TRANS_TYPE | = PRO_SURF_TRANS_TYPE_MOVE | | | | ------------------------------------------------------------------------- | | | | PRO_E_SRF_TR_SURF_SELECTION | PRO_CURVE, PRO_COMP_CRV, PRO_AXIS, | | | PRO_QUILT, PRO_DATUM_PLANE, | | | PRO_POINT, PRO_CSYS | | | (Refer Note#1) | ------------------------------------------------------------------------- | | | | PRO_E_MOVE_WITH_COPY | = PRO_MOVE_KEEP_ORIGINAL | | | = PRO_MOVE_HIDE_ORIGINAL | | | | ------------------------------------------------------------------------- | | | | PRO_E_MOVE_GEOM_TRF_ARR | Array element | | | | ------------------------------------------------------------------------- | | | | PRO_E_MOVE_GEOM_TRF | Compound element | | | One element per set present in | | | PRO_E_MOVE_GEOM_TRF_ARR | | | | ------------------------------------------------------------------------- | | | | PRO_E_SRF_TR_MOVE_TYPE | = PRO_MOVE_TYPE_TRANS | | | for Translate | | | = PRO_MOVE_TYPE_ROT | | | for Rotate | | | | ------------------------------------------------------------------------- | | | | PRO_E_DIRECTION_COMPOUND | For more details refer ProDirection.h | | | | ------------------------------------------------------------------------- | | | | PRO_E_SRF_TR_VAL_ELEM | Double Value | | | | ------------------------------------------------------------------------- Table Move:2 Elements required for Move ------------------------------------------------------------------------- | | Element Id | Comment | ------------------------------------------------------------------------- | Move : PRO_E_FEATURE_TYPE : Mandatory | | : PRO_E_SRF_TRANS_TYPE : Mandatory | | : PRO_E_STD_FEATURE_NAME : Optional | | : PRO_E_SRF_TR_SURF_SELECTION : Mandatory | | : PRO_E_MOVE_WITH_COPY : Mandatory | | : PRO_E_SRF_TR_MOVE_TYPE : Mandatory | | : PRO_E_DIRECTION_COMPOUND : Mandatory | | : PRO_E_SRF_TR_VAL_ELEM : Mandatory | |-----------------------------------------------------------------------| Note 1 : In Pro/ENGINEER Wildfire 2.0, the PRO_E_SRF_TR_SURF_SELECTION of PRO_FEATURE type are not supported. \*****************************************************************************/ typedef enum pro_move_type { PRO_MOVE_TYPE_TRANS = 0, PRO_MOVE_TYPE_ROT = 1 } ProMoveType; typedef enum pro_move_no_copy { PRO_MOVE_NO_COPY = 0, PRO_MOVE_MAKE_COPY = 1 } ProMoveNoCopy; typedef enum pro_move_with_copy { PRO_MOVE_KEEP_ORIGINAL = 0, PRO_MOVE_HIDE_ORIGINAL = 1 } ProMoveWithCopy; PRO_END_C_DECLS #endif