青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 1574|回复: 2

[疑难] 选择线段拉伸生成实体

[复制链接]
发表于 2011-12-13 10:59 | 显示全部楼层 |阅读模式
大家好,我想实现拉伸功能(先选择线框,然后拉伸),但是按类选择对话框打不开。。代码如下:
+ P5 O$ P, W- X1 Vint Project_Model_Create_Extrustion(ModelMandrelParameter *p_mandrel_para,tag_t *p_ext_tag)+ j; O6 E2 a) \8 S3 E
{
9 b- a! ^4 P7 a/ }uf_list_p_t loop_list,features;
0 E0 u' j( I: m7 j! p. r2 Achar *taper_angle="0.0",*limit[2],limit1[2][30];) @4 }; J2 ?9 V! }
double ref_pt[3];
9 d- p: f" X. q, W3 g& Z  E- mdouble direction[3] = {0.0,0.0,1.0};
3 {0 Y" k4 |  N8 F+ Nint    i,err;! B7 l9 {8 d9 k* `" m, f& \
char cue[] = "选择型材线框";
( C# h( V" J- Y    char title[] = "按类选择对话框";
9 c& S" W' w# F+ x0 {1 ~) m    int response, count;3 b  x- ?0 e% ^4 c# {
    tag_p_t objects;
- l. o7 F* U& `& Fchar message[200];+ a- {5 u7 q+ b2 J" b- i6 |( E
sprintf(taper_angle,"%lf",p_mandrel_para->A);
% p- x, ]/ i$ D0 z! y9 Z7 H  t% Z. Fsprintf(limit1[0],"%lf",p_mandrel_para->S);% N. Y. F+ u+ a' d- S) t
sprintf(limit1[1],"%lf",p_mandrel_para->E);& N/ G0 ~1 ~: ], x" g4 b4 T  j
limit[0]=limit1[0];limit[1]=limit1[1];
' J) c3 `4 d1 F" [( Y( P    UF_MODL_create_list(&loop_list);
; D2 V+ h( y! A  S5 L    if((UF_CALL(UF_UI_select_with_class_dialog(
3 x$ @1 x* y0 F( E. E          cue, title, UF_UI_SEL_SCOPE_WORK_PART,* l6 O# H0 w' M9 q3 i4 `
          NULL, NULL, &response, &count, &objects))) == 0)! f" N# b0 ~9 G- t8 I& K4 x/ M) l% e" o* D
    {
% m* h- n+ b& d$ n% i        2 A. W: y3 g( d! @1 V! \6 M  V* Z
  printf("object count = %d\n",count);
/ d( h7 h$ b' j& r  h1 `         if (response == UF_UI_OK && count > 0)
1 ~0 x+ m/ U! \; v9 M' F         {
1 B# K9 W# L, g+ x             for (i=0; i<count; i++)
7 J/ G7 C$ L- s             {! n. V' L2 R! j8 [- D8 |4 B
                 UF_DISP_set_highlight(objects[i], 0);  `- W( {0 N) a3 S! ?0 \
     UF_MODL_put_list_item(loop_list,objects[i]);7 B9 p( d5 @" R* {+ e5 ]
             }! l; q; `2 X6 I* i8 O: w
    UF_free(objects);
7 f7 }% v0 Q$ h4 x8 F         }
& h8 Q8 j9 S' G% ?    }
$ O! z2 w% r* R0 J: H& W) i/ ?: f6 w8 H* F, J! k
err=UF_MODL_create_extruded(loop_list, taper_angle, limit,7 Y/ s' B" K4 y: N6 R3 C: z4 Z
                          ref_pt, direction, UF_NULLSIGN,&features);
/ x2 o% y" ]) E# }% uif(err!=0)
8 D$ F' B6 }' e" ]' g6 L{; n6 l$ S  `5 B+ b* [- q
  UF_get_fail_message( err,message);' W$ C5 o- V8 }
  uc1601(message,1);% {& h* J+ s. I9 T
  return err;
) C+ S& O/ x7 x( k+ L: [}) }$ x9 x! N; p$ n7 R
UF_MODL_ask_list_item(features,0,p_ext_tag);
) g& j# b. I' c  GUF_MODL_delete_list(&features);( [$ W; [/ O; a
return err;/ Y) Q5 J& b* z3 i/ M4 E/ M
}
4 J9 u! k. f& y4 q( e) Z: l0 M0 J) p7 Y. M- k- s' u5 h
发表于 2011-12-13 11:25 | 显示全部楼层
怎么样了啊   大哥   
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-12-13 19:40 | 显示全部楼层
对话框本身的选择功能可以实现后续的拉伸功能,但是用标准对话框还是不能实现功能。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2024-11-17 21:33 , Processed in 0.048006 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表