TCollisionCheckObjectPrm¶
碰撞检测对象的参数结构体
结构体说明:
typedef struct CollisionCheckObjectPrm
{
short shapeType;
short reserve1[3];
TObjectShape shape;
short source;
short index[3];
short locate;
short side[3];
double offset[3];
short reserve2[4];
} TCollisionCheckObjectPrm;
reserve1:保留参数,必须为0。
shape:检测对象的形状描述信息。 当参数shapeType=OBJECT_TYPE_CUBOID或者OBJECT_TYPE_CYLINDER时,详情说明请参照TObjectShape
TObjectShape
typedef union ObjectShape
{
TObjectCuboid cuboid;
TObjectCylinder cylinder;
double data[32];
} TObjectShape;
TObjectCuboid
axis:长方体的3个相互垂直的边的轴向向量,向量矢量和为1。length:长方体的3个轴向的长度。
TObjectCylinder
axis:圆柱体的轴向向量,向量矢量和为1。radius:圆柱体半径。
height:圆柱体的高度。
MC_GROUP_PROFILE(501):检测对象由group中的轴带动,参考坐标系为group的MCS坐标系。
MC_PROFILE(31):检测对象由规划轴带动,参考坐标系为规划轴零点。
MC_NONE(-1):检测对象固定不动,参考坐标系为其中心。
参数source=MC_GROUP_PROFILE时,index[0]为group索引,index[1~2]设置为0。
参数source=MC_PROFILE时,index[0~3]分别指示带着检测对象在XYZ方向运动的轴索引,如果所处维度没有轴运动,设置成0。
参数source=MC_NONE时,index[0~3]设置为0。
locate:当参数source=MC_GROUP_PROFILE时,需要设置检测对象所处位置类型。
OBJECT_LOCATE_FIX(0):检测对象固定不动。
OBJECT_LOCATE_TOOL(1):检测对象位于工具侧,由工具侧的轴带着运动。
OBJECT_LOCATE_WORK_PIECE(2):检测对象位于工件侧,由工件侧的轴带着运动。
当参数source=MC_GROUP_PROFILE时,需要设置直线轴所处方位即直线轴位于工具侧还是工件侧。
offset:检测对象的零点相对参考源零点的偏移,数组大小为3,单位:mm。
当参数source=MC_GROUP_PROFILE时:
当参数source=MC_PROFILE,i参考源零点为轴零点。
当参数source=MC_NONE时,参考源零点为本身的零点。
reserve2:保留参数,必须为0。
相关指令:
GTN_GetCollisionCheckObjectPrm
注意事项: