|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
" Q6 L2 ~. |9 ?6 {/ ]0 K6 q- ], Z
; Y) E* B8 T% @! ~NX二次开发源码分享:选择管道routing线段的方法
9 z5 C$ j: i6 s: K
( p% b, l' ?/ r" K代码是C#的,主要是告诉大家masktriple的设置如下:
, z4 t) B6 W1 }5 H0 f( ]& r: p/ F* w+ O0 i" Y; [
% r. ~* h. e. nmask[0].Type = 0; % |% }& q9 |# U, [
mask[0].Subtype = 0;
# \0 H. b1 a! w9 v" V0 Zmask[0].SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ROUTING_CURVE_ONLY;
2 O' q* B( J5 T6 f Q: m5 B% q M
: F0 { t5 b) e$ O+ w, D0 e[mw_shl_code=c,true] public static Selection.Response select_route_segment(string prompt, ref TaggedObject obj) ) ~+ ]; A8 u; f+ ]0 d* q7 v/ T
{
8 l& J; C ^& L I; w TaggedObject selobj;
! ^3 N3 M+ \9 K7 w- e! O, ]2 R* I UI ui = UI.GetUI();
! L) G, @ p6 ` P. a Selection.MaskTriple[] mask = new Selection.MaskTriple[1];
5 n E: {+ e/ P8 b+ }" f) b. y {
- R( p# y5 d" i: O$ c( Y* w mask[0].Type = 0; 4 I' _ U0 k$ Y8 Z3 z b; Q$ N
mask[0].Subtype = 0;
5 t! Z7 O! p+ u1 m/ w) ^6 _ mask[0].SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ROUTING_CURVE_ONLY; % W- C, f/ q( L4 f9 g8 V% [
}
- c' A2 l6 n- z Point3d cursor = default(Point3d); ( F! d2 O- {* U4 S" B3 C4 g2 _. S+ d& c
: z, e8 X/ Y" E7 n6 s/ { Selection.Response resp = ui.SelectionManager.SelectTaggedObject(prompt, prompt, Selection.SelectionScope.AnyInAssembly, Selection.SelectionAction.ClearAndEnableSpecific, false, false, mask, out selobj, out cursor); f1 o% b/ z3 M' `9 `. k6 Q( m8 D6 j
% v" [' U' J. i8 \- d
if (resp == Selection.Response.ObjectSelected | resp == Selection.Response.ObjectSelectedByName)
* u( j6 T5 T; M- ]) z& i { ) g! t6 {# v0 Y" z$ D1 P; ^
obj = selobj;
' b6 X, {6 T, v return Selection.Response.Ok;
4 I1 L& [; A- h" h9 `0 N }
8 O2 u" e: Y- c( a& |/ \ else
; _9 S% p9 M9 j! S+ M, @ { . y p; v. u+ B9 V# h# w1 B3 Z! u
return Selection.Response.Cancel;
4 a) h' ?* G- s }
/ t3 B1 N. u8 u2 B9 V' d9 g } [/mw_shl_code]
5 @" Q' t+ O/ ?& k; g |
|