|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
6 G# @* B5 N5 j) U2 [3 W9 Q g9 ~8 I
_- ]. j; x( `; H
3 y- h9 \7 i0 X. l$ s0 \
2 p9 W' D" K7 K0 W' |# p7 \4 e d
UG NX二次开发源码分享:获取边或者曲线的起点和终点(java); S' O, ^7 i) X' Q. I% q
这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!! S4 r4 w2 A; f* p G. z8 l( A* I. `
! e+ `6 \2 c# c" W$ Q# y
% t* F& H1 l$ E" \4 B
/ ]& u3 k6 F4 x1 w1 c5 B- z2 J) e& }
, @+ f$ W+ Y6 I& X" L! b/ `static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException
2 t& g( Q P1 k& ]& r& }0 M {
( P2 g0 n; z: J6 w# x double[] limits = new double[2];
. s1 y# u# }' y; B. E/ Y2 A UFVariant evaluator;* J, o4 H; H; E! l
EvaluateData start;
9 ?0 ?" L( v1 X) q# ] EvaluateData end;1 v: o! L1 h5 ?+ u0 b$ c: P; x
' d7 X$ S. ]' i5 Z) r
4 P7 @9 M1 t# L2 K; G( _ evaluator = theUFSession.eval().initialize(theCurve.tag());
) o- p# O( X0 y/ H, Y" [ limits = theUFSession.eval().askLimits(evaluator);) P- {0 R6 _) N& ~- G% Z
start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);
) I! P4 }$ J4 a9 w' d: g" `" y end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);/ ]- z/ X @; |; F, {# w
theUFSession.eval().free(evaluator);
/ x! _: f/ G. f% {9 C! ~6 D0 T, |3 F3 \% b) r6 i# b- V! s1 n
/ S# d5 D: y* j* G' h! |5 |: V) D return new Point3d[] 2 k! e/ P- L5 k6 |8 H7 f4 U* t$ N; _5 R
{ new Point3d(start.point[0], start.point[1], start.point[2]),# g% H& S3 v6 e3 V1 Y' ]( V. n
new Point3d(end.point[0], end.point[1], end.point[2]) };
& B8 s2 K8 s* j* y# } P }
% K+ U6 a8 ?8 l/ U) Z
/ J9 Z2 z8 J1 W/ N! |# h% [' l. m# Z- v- F# S+ O
|
|