|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
3 J- Y8 P4 `% G0 L1 O
( x5 b# T- `' B3 @NX二次开发源码分享:选择管道routing线段的方法; O0 }1 r: ~2 H6 v% K+ p! Y" }' c# C
8 Z" \8 V! O9 o6 o1 q* M& i代码是C#的,主要是告诉大家masktriple的设置如下:7 N. C; ]# i* M$ N0 u: E
$ |9 @6 B3 C/ [( v" \3 _3 f8 i+ r. u$ Q' v+ Q& c K1 q
mask[0].Type = 0; 1 X' }. k5 N7 h% i" G. u T N
mask[0].Subtype = 0;
* J2 t k+ |" Y% K7 z2 kmask[0].SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ROUTING_CURVE_ONLY;
8 c5 L8 h. ~* M- y+ E4 R' m
6 n; R$ d) N3 t$ Y[mw_shl_code=c,true] public static Selection.Response select_route_segment(string prompt, ref TaggedObject obj)
9 A0 \+ D& x. L6 [7 O {
4 ]' m: K1 u3 w) y1 ~; I TaggedObject selobj;) N+ J8 H6 s2 V9 v8 O4 s
UI ui = UI.GetUI(); ; ?- V; X4 s* D3 p/ ?/ d/ ~& g* h
Selection.MaskTriple[] mask = new Selection.MaskTriple[1]; 6 Z, l" v7 e9 E( J% x3 t7 X
{ 8 n. J* M8 I) Q' p
mask[0].Type = 0; 8 c, L* e; Y6 j. H
mask[0].Subtype = 0; ; R4 G6 t. u% T( X5 }8 n" {
mask[0].SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ROUTING_CURVE_ONLY;
0 P! F7 s9 G; |/ G [ }
& T! R" k6 F$ O, W+ r7 R- m+ F Point3d cursor = default(Point3d); $ o# U; R$ ?( x- n5 x3 y! |/ Y
& z/ ^ j( i$ z. I& x$ ~& ? Selection.Response resp = ui.SelectionManager.SelectTaggedObject(prompt, prompt, Selection.SelectionScope.AnyInAssembly, Selection.SelectionAction.ClearAndEnableSpecific, false, false, mask, out selobj, out cursor); 3 T6 L6 z: n% g; `5 I+ Z( d5 }& h
; L# \' A; k3 ~ if (resp == Selection.Response.ObjectSelected | resp == Selection.Response.ObjectSelectedByName) * S: E- B' t" S2 k. i1 M
{ . X7 w' C' w# {' V" U" L
obj = selobj;
( g- }# M+ ]! E3 h return Selection.Response.Ok;
D! c) ?! ^+ w } 5 z* ]1 l+ u' W$ {! e
else
. b. u2 D) m- ? ^3 S! n {
8 G# S. G7 B4 j; D1 S return Selection.Response.Cancel; 1 |! t! B& d2 P1 }6 p
}
j7 o& d* M3 R } [/mw_shl_code] v0 i1 l! a y, ~* k
|
|