|
我也是新手,进来跟你讨论讨论~~~
* [! 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 {+ `
希望有所帮助! |
评分
-
查看全部评分
|