青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
发表于 2008-12-26 17:42 | 显示全部楼层 |阅读模式
各位大侠,我在ug中手工画了一个圆弧,现在我想用VC编程对这个圆弧进行操作,可就是不知道怎么才能把画的圆弧选中,这个问题已经困了我好几天了,跪求那位大侠帮忙,谢谢了!!
发表于 2009-1-9 10:59 | 显示全部楼层
我也是新手,进来跟你讨论讨论~~~
9 n% Q+ K2 s3 c) Y# @还望多多指教!, Y! E3 N; C/ S6 i# f& ~1 u# d( d
我最近做的一个小程序是要选定点的,我是用了UF_UI_select_with_single_dialog()函数,从界面上选择你需要的实体就可以了!/ x& w1 U% m2 r( D" n" X( d. l
同时,如果用这个函数的话,要先定义个初始化进进程函数init_proc(),在这个函数里设定你需要选择的实体,比如:直线、曲线。。。+ ~# a3 A5 v0 M) D% i
. ?& u, y4 G8 f$ ~3 @) f
我程序中用来选择点的部分程序:
. ^, c) \* B9 S: P$ n! P' U        // 调用选择对话框 [1/4/2009 %CREATED BY AUDREY LEE%]
5 g* w$ W/ R- Y5 {# W! q        char message[] = "请选择点作为放置点!";
  W8 r' y  S4 p& Z4 F9 ]        char title[] = "放置点选择";5 }* _. Z3 o& F+ d
        tag_t m_point_object;
2 \: q; M4 f" k* A6 Y4 q8 A/ |2 \- |        int scope = UF_UI_SEL_SCOPE_NO_CHANGE;1 L5 ^' {2 I) T& c% p) C& t
        int response = 0;9 T5 J2 Q! {( \: G; `
        double cursor[3] = {0.0};7 d3 G6 S( d" n+ ?; k
        tag_t view = NULL_TAG;
5 U7 i8 f) d0 ~* L. G- R: v         p9 g1 o  D* Y% c3 ]; W
        //加锁" x8 r. n3 F# Y
        UF_UI_lock_ug_access (UF_UI_FROM_CUSTOM);
- A3 t, O4 J9 J( G# M3 h9 _/ e$ x
        UF_UI_select_with_single_dialog(message, title, scope, init_proc, NULL, &response, &m_point_object, cursor, &view);                                    6 {2 _* S5 S/ H2 m8 [& C

3 n3 i! T" D# L$ l0 i. @. B# j        //解锁
+ u: ]9 t" Z# a$ ^( `! k        UF_UI_unlock_ug_access (UF_UI_FROM_CUSTOM);
) q* o9 b% Q0 |, H: _5 y3 o. _
4 b$ r0 Q5 T( Q( r" [. d5 k6 O另外:       用来定义你需要选择的实体类型的那个函数如下。。。
' K! b5 i: r5 h4 p& E0 Y//设置Selection
$ n, `! |5 ~3 P5 ]# S; d/ g0 astatic int init_proc( UF_UI_selection_p_t select, void *user_data )' I6 ^: y$ m7 P- X  F
{9 q( _" u# K9 `9 D; P/ x
        int  errorCode   = 0;
- {& S6 P2 a8 j        int  num_triples = 1;
) D5 _5 ?6 q- W! L; h& B# _        UF_UI_mask_t mask_triples[] = {UF_point_type, 0, 0};    //修改这里,选择曲线类型
. w" x) K* l: W% C, ~* u" Q$ S3 A
2 l7 F# k7 u1 @0 s" ]        //设置可选物体的类型
" G: K) B0 b, A2 [        errorCode = UF_UI_set_sel_mask(select, UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,& [& w) r9 H) N! `. h4 Y2 E
                num_triples, mask_triples);4 I( s. a4 K  a) o$ A, s
        if( errorCode == 0)$ n/ C3 D; Y9 \. ?/ x
        {
5 T/ e+ t6 D; o4 B* _" Q9 t                return UF_UI_SEL_SUCCESS;
* a* o/ V! ~3 V/ g( |        }$ D( H& l1 r; m3 H* t# g
        else
: i2 J8 Z7 [2 Q8 |. ~) f" O, n        {
- Z/ [; l, v/ C. E                return UF_UI_SEL_FAILURE;
- E7 F- f) Y# K9 r: N! T        }: D+ j, z9 D$ w" R+ X: _
}
9 i# C- ?2 y$ D) \- D6 P. I" g1 j. C5 B% J$ ?. t' O2 d
希望有所帮助!

评分

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

查看全部评分

发表于 2009-1-9 11:00 | 显示全部楼层
咦?。。。5 [9 u5 h# d1 o
发了以后才注意到。。。原来还是你啊~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-27 21:28 , Processed in 0.223752 second(s), 29 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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