青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[疑难] 菜鸟求助,对样条曲线进行访问.

[复制链接]
发表于 2008-12-26 17:42 | 显示全部楼层 |阅读模式
各位大侠,我在ug中手工画了一个圆弧,现在我想用VC编程对这个圆弧进行操作,可就是不知道怎么才能把画的圆弧选中,这个问题已经困了我好几天了,跪求那位大侠帮忙,谢谢了!!
发表于 2009-1-9 10:59 | 显示全部楼层
我也是新手,进来跟你讨论讨论~~~
* [! C8 `% R! o9 I8 }) x/ H( T还望多多指教!9 P8 ]1 @# K& Z5 H8 r
我最近做的一个小程序是要选定点的,我是用了UF_UI_select_with_single_dialog()函数,从界面上选择你需要的实体就可以了!
# I& ?9 }  D$ t6 ^+ q0 R3 f" y' g同时,如果用这个函数的话,要先定义个初始化进进程函数init_proc(),在这个函数里设定你需要选择的实体,比如:直线、曲线。。。8 H2 @5 e% z. y) P- S

( C& t2 X: T2 d7 x) u" h* W. t) X3 K我程序中用来选择点的部分程序:/ }/ J/ W* y( E2 r* A$ `/ u
        // 调用选择对话框 [1/4/2009 %CREATED BY AUDREY LEE%]. y; D6 ]" f9 _- p6 E/ L
        char message[] = "请选择点作为放置点!";: K4 k" z$ f7 {2 {
        char title[] = "放置点选择";, }$ Y0 v1 e: x% ?9 y3 H
        tag_t m_point_object;. `% b) }) t" b
        int scope = UF_UI_SEL_SCOPE_NO_CHANGE;
( M8 W  j+ N" m& Q        int response = 0;5 m1 R( g' D- H- u  A6 U5 l' R9 L
        double cursor[3] = {0.0};3 \* \  v  m/ |. {4 V+ Y
        tag_t view = NULL_TAG;0 Z7 c" q2 X1 k& ~
      
0 k# c3 X" g5 _+ t        //加锁/ d- z9 ]7 [5 w) h4 @6 v  E+ ^
        UF_UI_lock_ug_access (UF_UI_FROM_CUSTOM);
) M0 r% p0 i" c0 T) P0 ?0 T# J: n
        UF_UI_select_with_single_dialog(message, title, scope, init_proc, NULL, &response, &m_point_object, cursor, &view);                                    $ L' k8 e. ]3 ^/ e: b  I

+ B3 \0 ~3 X+ j4 z, o" O        //解锁% D/ ?0 O$ A/ f9 `' ?
        UF_UI_unlock_ug_access (UF_UI_FROM_CUSTOM);1 T  q+ I% I5 p) K9 m( X

  U" C3 S7 g: T3 @& t! b+ S* f: Q# {另外:       用来定义你需要选择的实体类型的那个函数如下。。。. `% C3 h8 e$ c; ^( s7 W% H
//设置Selection
/ B" K; _2 |) Y2 h- B. {static int init_proc( UF_UI_selection_p_t select, void *user_data )
3 `; f; S0 O  P) [. _9 y{$ m6 E1 Z% a3 K9 A9 Y
        int  errorCode   = 0;
+ @6 ?, |: c2 \4 `- V( e* l        int  num_triples = 1;
( c! U! X) K8 B6 u$ [        UF_UI_mask_t mask_triples[] = {UF_point_type, 0, 0};    //修改这里,选择曲线类型
1 O$ G$ Y- h( ]8 u
& g% u7 f2 w; @6 ~8 K        //设置可选物体的类型* R# J4 B% b: @4 _- x
        errorCode = UF_UI_set_sel_mask(select, UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,
$ O+ J% H, i5 C8 w, u1 N: q) j                num_triples, mask_triples);$ j% w4 |# H5 i' G) i
        if( errorCode == 0)7 u( n" U  {4 {$ Q
        {
! C+ g$ p" X+ t: l+ S! y                return UF_UI_SEL_SUCCESS;" d1 `* i* C$ a+ C0 v6 ~
        }( O( \' ^3 h5 X: q7 S
        else
! A/ T* x. u. w9 p        {3 z# F3 ?& K* \5 |# _" \
                return UF_UI_SEL_FAILURE;/ U3 n/ I2 T( l/ k# Q& [9 i( Z
        }
) ~$ O% q. m! @" A3 V- N}4 Y+ {! K6 o* k' Y4 B1 V: v* G5 y3 c
- J! K1 a( w7 X/ @( r/ v* @# y8 {+ `
希望有所帮助!

评分

参与人数 1流量 +1 收起 理由
tangxu12 + 1 帮助

查看全部评分

发表于 2009-1-9 11:00 | 显示全部楼层
咦?。。。6 w( W! \6 A1 @, T$ J
发了以后才注意到。。。原来还是你啊~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-27 21:45 , Processed in 0.056129 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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