iCAx开思工具箱
标题:
跪求怎样用二次开发函数偏移一个加厚体上的某个表面
[打印本页]
作者:
wangyong_1982
时间:
2011-10-25 16:59
标题:
跪求怎样用二次开发函数偏移一个加厚体上的某个表面
之前做了一下用的UF_MODL_create_face_offset可是便宜之后不是单独的一个面偏移了 而是整个实体变厚了
作者:
qindongjun88
时间:
2011-10-26 08:45
你要先找到你所要偏移的那个面才行!!!!
作者:
tomaini
时间:
2011-10-26 09:35
同意楼上,帖段代码看下
作者:
wangyong_1982
时间:
2011-10-27 19:55
是这样的我本来有一个面,然后加厚了,程序改动了现在如果是选择 原来那个面可以进行偏移了,但是如果选择的是加厚产生的那一面就不行,可问高手怎样解决?
作者:
wangyong_1982
时间:
2011-10-27 19:56
qindongjun88 发表于 2011-10-26 08:45
你要先找到你所要偏移的那个面才行!!!!
是这样的我本来有一个面,然后加厚了,程序改动了现在如果是选择 原来那个面可以进行偏移了,但是如果选择的是加厚产生的那一面就不行,可问高手怎样解决?
作者:
wangyong_1982
时间:
2011-10-27 19:58
UpdateData(true);
double translation[3]={0,0,0};
double matrix[16];
FTN(uf5943)(translation, matrix);
tag_t objects[1];
//tag_t body_tag;
//UF_MODL_ask_feat_body(m_surftest, &body_tag);
objects[0]=m_OBJsId3[0];
int n_objects=1;
int move_or_copy=2; //wrhit copy
int dest_layer=-1;
int trace_curves=2;
tag_t copies[1];
tag_t trace_curve_group[1];
int status;
FTN(uf5947)(matrix, objects, &n_objects,&move_or_copy,
&dest_layer, &trace_curves, copies,trace_curve_group,
&status);
uf_list_p_t feature_tag_list;
UF_MODL_create_list(&feature_tag_list);
UF_MODL_ask_body_feats(copies[0],&feature_tag_list );
char str[5];
itoa(m_offset3, str, 10);
char *offset=str;
tag_t feat;
UF_MODL_ask_list_item(feature_tag_list,0,&feat);
uf_list_t features;
features.eid=feat;
features.next=NULL;
UF_MODL_create_feature_offset(offset, &features, &m_OffsetSurf3);
UF_MODL_delete_list(&feature_tag_list);
作者:
qindongjun88
时间:
2011-10-28 12:37
经过转换后,copies[0]已经不是一个特征了,你用UF_MODL_copy_paste_features()来代替uf5947吧......
作者:
ZHOUN
时间:
2011-10-28 13:24
帮你顶一顶。。。
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3