|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
【PLM之家-NX9.0二次开发实例视频】9 ufun对象选择功能; s; Y" m& I% }1 j: r
7 T# S$ ?1 g/ O" |+ b/ e( Q* f. w7 h6 a6 K3 e" V
内容:使用ufun 创建一个对象选择功能,通过单选或者类的方式进行选择
6 c7 e! u A" v% s$ H* k目的:熟悉使用ufun的经典选择功能!
h7 _; L n* @# k* y$ G$ G" l) Y* W7 @# I S, T1 @" \- V
7 U* J r3 E, {6 `) a5 p
// 初始化进程函数
* `# ~0 |+ L" D. q3 u8 z3 O1 Rstatic int int_proc(UF_UI_selection_p_t selection,void *user_data)* {* p% K5 o* N5 H8 g, e( G& \+ D) R$ w
{0 I1 G3 Z! x- ?+ H* s, F, Z
( `: D: x( B: j int errorCode= 0;5 m+ r6 P' Q7 U% `
int num =1;
" A& d/ G. N, X& F- p% ? UF_UI_mask_t masks[] = {UF_face_type,0,0};
: W) r5 s% y/ D0 c# S1 g errorCode = UF_UI_set_sel_mask(selection,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,num,masks);
9 S' A) O' u8 G if(errorCode ==0)
+ o" ?/ ]) w8 z {
0 c3 f# E7 L1 q4 f& ` return UF_UI_SEL_SUCCESS;6 B% }) k. S, w
}- E7 m3 O+ Z; R3 @" N- C
else
% m) _$ C; s; y {
. J2 y, n7 B+ } return UF_UI_SEL_FAILURE;
- V9 @+ Y% V2 q: A+ L/ G }
/ j+ B$ h( `; x" F! M/ M }. j3 [$ ~: b$ x7 K$ a
) }# D! n0 {" k, v% V# C6 |0 i+ z/ m
- `7 }! y* q: H // 选择方式
( {3 _7 w- w3 W% XUF_UI_selection_options_t pts;) b2 {" C: b7 k2 t# d
UF_UI_mask_t mask[5]={{UF_line_type, 0, 0},
9 {9 |0 o. |9 _/ z9 t* D2 n {UF_circle_type, 0, 0},
5 x8 U0 m3 g2 h, z) ~0 ~9 A6 X/ v# P {UF_conic_type, UF_all_subtype, 0},2 [0 F! T- q) j- {- t8 K, b
{UF_spline_type, 0, 0},2 G$ }, i! A# N- K, |' p
{UF_point_type, 0, 0}};
2 _6 n6 N/ b5 l3 o3 g" k0 B/ K pts.scope =UF_UI_SEL_SCOPE_WORK_PART_AND_OCC;
. \3 e: D3 t3 K3 m2 k pts.reserved =0;
( p2 ~. ?( ` o& T: [1 i2 g pts.mask_triples=mask;
) P9 Z0 Q% x$ w pts.num_mask_triples =5;
0 C6 k3 m1 {5 d! M! T; b" f9 M# G int count;
: b! P) r8 R$ C% B" B z int res;
. U! R2 l) X5 a& } {' F tag_t object;
; `! o+ n, r' b0 k+ M1 }, w$ f$ b tag_p_t obj;- E0 D! H4 X9 R: B6 q6 P: q
tag_t view;
: B1 s3 M0 m1 v8 Z& v! S double cursor[3];
3 w$ ~+ S6 @" I2 o s1 `0 u1 o- W UF_UI_lock_UG_access(UF_UI_FROM_CUSTOM);9 `/ M7 ]0 |+ u( q( l
UF_UI_select_with_single_dialog("select a single","plmhome select dialog",UF_UI_SEL_SCOPE_NO_CHANGE,int_proc,NULL,&res,&object,cursor,&view);
4 ]/ g3 r/ {: {; V8 g, C5 w2 m( Y UF_UI_select_by_class("select by class",&pts,&res,&count,&obj);* \% G& Z# V U) X3 i
UF_UI_unlock_ug_access(UF_UI_FROM_CUSTOM);
8 S) ]2 \- T) b- h2 }6 }1 q8 r" g- c
1 J& p) u1 l' Y4 |$ q4 o& R
|
|