QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 1365|回复: 1
收起左侧

[讨论] 关于UG/OPEN API的问题

[复制链接]
发表于 2007-6-2 18:33:22 | 显示全部楼层 |阅读模式 来自: 中国上海

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
依然是菜鸟求助2 V: K8 q9 O) p6 @
我用UIStyler建立了一个按钮,那如何实现:点击该按钮后可以用鼠标选择一曲线,获得该曲线中点坐标位置,我的程序如下,但是似乎总是死循环。
6 `, C7 G3 e: B# P1 s7 Cint GP_action_0_act_cb ( int dialog_id,
% ]8 O8 l* ?3 E* b$ u3 r5 `* r             void * client_data,
$ f( Y3 Q& i  `5 G             UF_STYLER_item_value_type_p_t callback_data)
, z; _: ]8 S1 w. f4 d& W{1 J! j7 o9 p" O/ R" o3 `2 q
     /* Make sure User Function is available. */  ! h: g' ?: T9 `
     if ( UF_initialize() != 0)
, J1 l0 Y4 C0 k, }          return ( UF_UI_CB_CONTINUE_DIALOG );1 N7 K: b3 D/ R1 b, q( L4 r/ g
     /* ---- Enter your callback code here ----- */
5 A0 s- }# d' `char message[133];. ?; ]# d, m" t, s
message[0]='\0';
8 M1 Q# w+ d7 A6 c% \# Q5 \strcpy(message, "请选择一条曲线");
! F0 B1 D9 r$ r8 k  a. X# NUF_UI_selection_options_t opts;$ P1 N! }" B3 m
UF_UI_mask_t mask;
4 f/ u8 A) }' b# \int response;
" s/ ~3 A3 P- x5 \0 Otag_t object, view;& n( v, I: G# ~9 u
double cursor[3];+ E, E5 Z3 p* z9 X
int unhighlight=0;+ M8 M% @# B% G; v; T3 D3 q8 ]0 ]
7 s5 y; w+ H, n: w
UF_initialize();
: S* R! ~' o9 gopts.other_options=0;
' `/ a( k8 Z& a" h; [! xopts.reserved=NULL;2 @" M( g7 I& l3 u2 ^- N
opts.num_mask_triples=1;
" [9 S2 J9 k. V! xopts.mask_triples=&mask;3 a, Q# E/ W' n7 t8 Y, _" e$ D9 {
opts.mask_triples->object_type=UF_spline_type;
  g) p5 }0 F4 U0 k" topts.mask_triples->object_subtype=0;6 {$ P( ~8 S1 d) Z3 A
opts.mask_triples->solid_type=0;/ D" x) P7 Y$ S  U7 B% {; x
opts.scope=UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY;
' |# V$ T& W7 |+ E) _" Wdouble port[3];
' d4 o4 }2 B) W4 a* a; I& {! a1 O, o/ _) }
do{int irc=UF_UI_select_single(message, &opts, &response, &object, cursor, &view);}
/ N* Z9 ^9 U4 ?9 `3 A8 }- ?# m1 |while (!(response==UF_UI_OBJECT_SELECTED));
: M& J: K9 A7 A1 qif (response!=UF_UI_OBJECT_SELECTED)
) Z8 o# Q% q' R6 r{
% v$ G  p- z' `) Kuc1601("No Curve Selected",1);+ o( E1 z( a; L* S7 ]+ F$ c5 X- k
UF_terminate ();. y, O- T8 r8 @+ a, g1 R" z0 K' y
return (UF_UI_CB_CONTINUE_DIALOG);$ V4 `4 B6 r9 E
}
& }4 a  ~" \$ Q( Q8 x% V5 a  6 K4 U) L& i4 b- W1 \
int ret=UF_MODL_ask_curve_props(object,0.5,port,NULL,NULL,NULL,NULL,NULL);# d9 V, e: {& T
  char message2[133];/ i# v9 [% ^& |" S5 l0 S
  message2[0]='\0';
; Z& l8 `+ p. z  sprintf (message2, "曲线中点坐标为:%f,%f,%f",port[0],port[1],port[2]);$ b, w6 t6 Z% U" e# n
  uc1601(message2,1);
9 K& K$ ^: I1 J5 m% ?9 |8 ^9 H5 o4 S! c9 }- v! z
UF_terminate ();
5 T1 N+ m/ `: W/ l. L8 G: r1 p; _: qreturn (UF_UI_CB_CONTINUE_DIALOG);9 [) o& |+ q% l
   }
发表于 2007-6-2 19:46:23 | 显示全部楼层 来自: 中国湖北武汉
我赛,怎么是这种呀2 \) U/ z; q4 s
折是参数花的设计吗,
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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