iCAx开思工具箱
标题:
高手
[打印本页]
作者:
刘亮
时间:
2005-5-12 17:53
标题:
高手
我想从一个实体比如长方体中抽取边沿线,想用下面的函数
extern UFUNEXPORT int UF_MODL_create_curve_from_edge(
tag_t edge_id ,/* <I>
Object identifier of the edge
*/
tag_t * ugcrv_id /* <O>
Identifier of the extracted curve
*/
);
edge_id 我怎么获得啊???
作者:
mizzle
时间:
2005-5-12 22:28
int irc = 0;
char *message = "Select Face";
UF_UI_selection_options_t opts;
UF_UI_mask_t mask;
int response;
tag_t face_tag, view;
double cursor[3];
int unhighlight=0;
UF_initialize();
opts.other_options = 0;
opts.reserved = NULL;
opts.num_mask_triples = 1;
opts.mask_triples = [$mask]
/* set up selectable type, subtype, solid type */
opts.mask_triples->object_type = UF_face_type;
opts.mask_triples->object_subtype = 0;
opts.mask_triples->solid_type = UF_UI_SEL_FEATURE_BODY;
/* set selection scope to be work part */
opts.scope = UF_UI_SEL_SCOPE_WORK_PART;
irc = UF_UI_select_single(message,&opts,&response,
[$face_tag,cursor,&view)]
if(irc == 0)
{
uc1601("create edge from face",0);
}
int res_edge = 0;
uf_list_p_t edge_list;
res_edge = UF_MODL_ask_face_edges(face_tag,[$edge_list)]
if(res_edge == 0)
{
uc1601("create curve from edge",0);
}
int res_list_count = 0,count;
res_list_count = UF_MODL_ask_list_count(edge_list,[$count)]
tag_t object;
int res_tag;
int i = 0;
while(i<=count)
{
res_tag = UF_MODL_ask_list_item(edge_list,i,[$object)]
int res_curve = 0;
tag_t ugcrv_id;
res_curve = UF_MODL_create_curve_from_edge(object,[$ugcrv_id)]
i++;
}
UF_DISP_set_highlight(face_tag,0);
作者:
刘亮
时间:
2005-5-13 11:01
谢谢楼上的兄弟
我已搞定
作者:
刘亮
时间:
2005-5-13 11:01
谢谢楼上的兄弟
我已搞定
作者:
刘亮
时间:
2005-5-13 11:01
谢谢楼上的兄弟
我已搞定
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3