iCAx开思网
标题:
protoolkit二次开发中提取装配件中的约束关系和相关联的零件信息
[打印本页]
作者:
murphykwu
时间:
2009-3-19 11:00
标题:
protoolkit二次开发中提取装配件中的约束关系和相关联的零件信息
问题描述:
以一个联轴器为例,已经实现了高亮显示一个装配约束(如对齐约束,两个联轴器的中心轴高亮显示)。现在要获取这个装配约束关联的两个零件的信息,以及这个约束涉及到的两个中心轴的名称。
相关代码:
ProSelection comp_constr, asm_constr;
aref_status = ProAsmcompconstraintAsmreferenceGet (constr_array
, &asm_constr, &dtmside);
if (aref_status == PRO_TK_NO_ERROR)
{
ProSelectionHighlight (asm_constr, PRO_COLOR_ERROR);
}
cref_status = ProAsmcompconstraintCompreferenceGet (constr_array
, &comp_constr, &dtmside);
if (cref_status == PRO_TK_NO_ERROR)
{
ProSelectionHighlight (comp_constr, PRO_COLOR_WARNING);
}
以联轴器为例,他们的中心轴对齐。那么asm_constr和comp_constr对应的是两个中心轴,那么怎么取得这两个proselection对象的名称呢。比如说我想取得联轴器1中对应的那个asm_constr对应的轴A_1名称,怎么从asm_constr取得这个名称,有什么函数吗?要获得Proselection对象的信息,有哪些函数?
找了很久,关于装配方面的二次开发资料很少,而且都没有详细的讲述,能用到的只有帮助文档。但是要理清帮助文档里面的函数相当的难。各位有没有相关的代码或者解答,不胜感激啊!
本帖最后由 murphykwu 于 2009-4-15 11:20 编辑
作者:
Easy2009
时间:
2009-3-20 21:35
一个思路,看行不?
1-> 使用 int prodb_get_asm_constraints () 函数, 得到 Pro_asm_constraint
**constraints;
2->遍历
constraints ,分析
pro_asm_constraint_type =
= PRO_ASM_INSERT ,
typedef struct
pro_asm_constraint
{
Pro_asm_constraint_type type; /* Type of constraint */
Select3d *p_ref1; /* First reference surface, datum etc. */
Select3d *p_ref2; /* Second reference surface, etc. */
double offset; /* The offset distance (where relevant */
int orient1; /* if DTM PLANE (+-1 Yellow/Red) */
int orient2; /* if DTM PLANE (+-1 Yellow/Red) */
}
Pro_asm_constraint
;
作者:
murphykwu
时间:
2009-3-24 17:20
谢谢了。我试试~~
欢迎光临 iCAx开思网 (https://www.icax.org/)
Powered by Discuz! X3.3