|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
5 A, U! u- `" c+ y! [& J& k- h5 ?
: N) `" D. w9 {0 f8 q0 LNX二次开发源码分享:选择管道routing线段的方法' u- L8 _# ~7 X3 h D
8 V& Y/ P7 j5 j) _
代码是C#的,主要是告诉大家masktriple的设置如下:' K, g/ x$ `. @2 m( s* `, i
G+ n) x7 Y4 F' q% y& H1 Q3 N1 ?" O( H3 ^* B
mask[0].Type = 0;
; Z3 P0 j C! rmask[0].Subtype = 0; ( [: M! G) A; a; b3 v
mask[0].SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ROUTING_CURVE_ONLY; * L( }/ L( y$ A4 Q
& s; ]% T5 W) y7 ^[mw_shl_code=c,true] public static Selection.Response select_route_segment(string prompt, ref TaggedObject obj) ' {, a, U6 K. a% `( ~
{
) c8 c+ [ S6 ? TaggedObject selobj;* v9 e$ ?. c& {3 X! Q) N/ C; M
UI ui = UI.GetUI();
. \: n9 z. t: f Selection.MaskTriple[] mask = new Selection.MaskTriple[1]; ; e1 E$ i% \* h8 u, T; M) f
{ 8 B: I. s& I/ W' K5 p" b7 P8 m
mask[0].Type = 0; ( S1 ^2 [) e! j
mask[0].Subtype = 0; 6 x/ }. ~" o a* Y/ j( e' C
mask[0].SolidBodySubtype = UFConstants.UF_UI_SEL_FEATURE_ROUTING_CURVE_ONLY;
4 F$ d, V+ w( c1 ? } 1 q" p3 P& q: _9 \ p7 B
Point3d cursor = default(Point3d);
B/ b' s" g' y D + P. ^7 `9 q4 k
Selection.Response resp = ui.SelectionManager.SelectTaggedObject(prompt, prompt, Selection.SelectionScope.AnyInAssembly, Selection.SelectionAction.ClearAndEnableSpecific, false, false, mask, out selobj, out cursor); I! w3 l$ L$ t C6 t
8 {3 Y5 M* h4 {9 n if (resp == Selection.Response.ObjectSelected | resp == Selection.Response.ObjectSelectedByName)
% {; `$ f' A3 f, r! Q. A6 T- e {
& A% k, P; |6 t8 G6 P& w8 n# l obj = selobj;9 X2 n$ L) J* R2 ]
return Selection.Response.Ok;
/ h1 F% c3 b3 P) i0 ]' E% r7 ?! E' O }
) {! w8 G, f, e% q& o: m2 f: M else
! G% m& f B, K* _- d {
) j2 l* p8 ]% n8 a* B return Selection.Response.Cancel;
, n% ~+ b4 y. C3 N1 Y }
/ ]; e4 {: D' Y+ N } [/mw_shl_code]* z& ]9 Q c3 K% f
|
|