|
我也是新手,进来跟你讨论讨论~~~
# ? g. ~4 Z4 A% _! y- @* I还望多多指教!
& ]+ F- X- ?( O! ^我最近做的一个小程序是要选定点的,我是用了UF_UI_select_with_single_dialog()函数,从界面上选择你需要的实体就可以了!! x* T, s# @1 } S
同时,如果用这个函数的话,要先定义个初始化进进程函数init_proc(),在这个函数里设定你需要选择的实体,比如:直线、曲线。。。4 S+ ~+ F T: F0 `
" v- c: W, l2 p8 v5 b9 h我程序中用来选择点的部分程序:
* A. U& m% r( [0 u7 ] // 调用选择对话框 [1/4/2009 %CREATED BY AUDREY LEE%]: {6 ~: h" k7 M
char message[] = "请选择点作为放置点!";
# k4 a& m" N' ] ~ char title[] = "放置点选择";- ~% ?1 C2 a. N0 L7 u6 C a, ]
tag_t m_point_object;% q0 S. m. g/ A# ~
int scope = UF_UI_SEL_SCOPE_NO_CHANGE;# |' q6 t9 P2 P6 h2 K
int response = 0;" Q- q1 L9 k+ \3 r2 O n
double cursor[3] = {0.0};0 r- Z/ h8 h7 p& c" u
tag_t view = NULL_TAG;
0 [0 E; e' L4 F6 U6 ?3 F& c
% c% w0 d* b6 c& S h- Z( I, Y, r) O //加锁
B( l% j! ^8 v9 h4 w4 m' e* t UF_UI_lock_ug_access (UF_UI_FROM_CUSTOM);2 Z" Z0 j, k9 V9 Z- F- y7 s8 b6 Y" h
5 \; ^$ h* L/ r UF_UI_select_with_single_dialog(message, title, scope, init_proc, NULL, &response, &m_point_object, cursor, &view);
/ Z6 W/ Q+ a; `# X0 {
. H! T$ A/ K; B6 Q& Q: l* k# ] //解锁" S! v4 [& i# y6 C
UF_UI_unlock_ug_access (UF_UI_FROM_CUSTOM);* B' o' B3 O* S; E: ~! p X5 n
/ h2 M# ^& M0 o; ]/ k1 V另外: 用来定义你需要选择的实体类型的那个函数如下。。。! X$ F3 S3 U) {
//设置Selection
5 X, [/ S4 J% Q/ Q+ i2 Fstatic int init_proc( UF_UI_selection_p_t select, void *user_data )& d6 @) t$ v: b& p+ u2 e
{
3 Q# Z- }# H) `5 J. M& D6 H7 A int errorCode = 0;
5 S# }( r. V L. a0 l int num_triples = 1;
, P9 v S6 w( Z0 Y% ]2 o5 o( t) H3 H UF_UI_mask_t mask_triples[] = {UF_point_type, 0, 0}; //修改这里,选择曲线类型
% G# p$ P! f! g9 d: \- b5 d ~; t/ Q5 v. v* {' @6 o
//设置可选物体的类型
2 n) g! x$ p9 T7 a5 | errorCode = UF_UI_set_sel_mask(select, UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,- N5 [8 d% ~" I1 l2 z" Q
num_triples, mask_triples);* J# F. T2 a; w2 M1 s& A3 a
if( errorCode == 0); n* p; R% z! O0 g" E2 c
{
" K% o, @( A. d7 o% n return UF_UI_SEL_SUCCESS;
* e$ m$ c# u, i# M! r/ M& F4 @ }& C9 N. f6 X8 H' }9 g
else8 m5 x& ]1 r0 b
{
! V3 @! ~8 ^0 j" x9 T5 T* Q return UF_UI_SEL_FAILURE;) \" n8 D' N2 _! D% w. q
}
4 E3 @/ o M+ n& Y- q$ ?}
4 V% }4 r7 w2 ~) `$ d5 o- q/ B; i' I
希望有所帮助! |
评分
-
查看全部评分
|