iCAx开思工具箱

标题: 【求助】ugopen如何选择一条线 [打印本页]

作者: yangdan    时间: 2004-6-25 14:29
标题: 【求助】ugopen如何选择一条线
使用如下方式,可以选择面  
  UF_UI_selection_options_t opts;
  UF_UI_mask_t mask;
  int response;
  tag_t object, view;
  opts.other_options=0;
  opts.reserved=NULL;
  opts.num_mask_triples=1;
  opts.mask_triples=[$mask]
  
  opts.mask_triples->object_type=UF_face_type;
  
  opts.mask_triples->object_subtype=UF_all_subtype;
opts.mask_triples->solid_type=UF_UI_SEL_FEATURE_ANY_FACE;
  
    opts.scope=UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY;
int irc=UF_UI_select_single(message, [$opts, &response, &object, cursor, &view)]
  
使用同样的方法,将opts.mask_triples->object_type=UF_face_type;
改为opts.mask_triples->object_type=UF_line_type;
  
来选择线,就不行.请问,改如何才能选到线?
作者: fourwood_0328    时间: 2004-7-8 09:01
UF_Line_type
UF_SPline_type
...
作者: xyftxwd    时间: 2004-7-12 13:58
好像不行了阿。
作者: fourwood    时间: 2004-7-13 19:11
UG自带的例子,好好看看
  
void ufusr(char *param, int *retcod, int param_len)
{
int irc = 0;
char *message = "Select Object";
UF_UI_selection_options_t opts;
UF_UI_mask_t mask;
int response;
tag_t object, view;
double cursor[3];
char error[133];
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_solid_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,
                          [$object,cursor,&view)]
/* if no error, print information about selected object */
if (!irc)
{
  printf("response= %d, object tag= %d, view tag= %d, cursor
    position= %f %f %f\n", response, object, view, cursor[0],
    cursor[1],cursor[2]);
  /* unhighlight selected object */
  FTN(uf1640)([$object,&unhighlight)]
}
else  /* else get error message */
{
  UF_get_fail_message(irc,error);
  printf("ERROR: %s\n",error);
}
UF_terminate();
}
作者: tari    时间: 2004-7-13 22:14
UF_line_type和UF_spline_type?中间两个字母应该小写吧
作者: xyftxwd    时间: 2004-7-22 14:48
这些都没有问题啊,可是为什么我设置了还是不可以啊?
  
  UF_UI_selection_options_t opts;  
  UF_UI_mask_t mask;  
  int response;  
  tag_t object, view;  
  opts.other_options=0;  
  opts.reserved=NULL;  
  opts.num_mask_triples=1;  
  opts.mask_triples=[$mask]  
  
  opts.mask_triples->object_type=UF_edge_type;  
  
  opts.mask_triples->object_subtype=UF_all_subtype;  
opts.mask_triples->solid_type=UF_UI_SEL_FEATURE_ANY_EDGE;  
  
    opts.scope=UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY;  
int irc=UF_UI_select_single(message, [$opts, &response, &object, cursor, &view)]
作者: zzz    时间: 2004-7-22 15:33
直接用UF_edge_type, 0, 0吧。
作者: linduyu_y    时间: 2004-7-23 22:01
opts.mask_triples->solid_type=UF_UI_SEL_FEATURE_ANY_EDGE
!!!错误,solid_type只用在solid  type上,其它为0。
作者: zhanghxing    时间: 2004-7-24 17:45
能不能将你的那个选择面的程序给我看看,详细的,完整的?谢谢!
作者: xyftxwd    时间: 2004-7-25 09:58
十分感谢




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3