|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
3 Q$ e3 p5 n d; J1 J
2 e8 `7 s/ J! g4 \( a) w
/ M6 O9 C: K3 k4 g3 I- b% E& j* C7 m- s! K7 w
' U+ x d1 q' b$ M
UG NX二次开发源码分享:获取边或者曲线的起点和终点(java)
" J) i8 f- T( Z1 | S- M) S这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!
* s7 i5 P o) L7 V% r) T. q+ j; v4 D
. p+ U' ]% ~2 e
# [, v8 d7 L& j9 x# J- w4 w- y2 w
, Q$ K, x5 A; q+ o6 }static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException6 w3 L; T, f, N* f: |
{# } p& U5 e5 {: X
double[] limits = new double[2];: C4 f8 v! e6 S8 f l
UFVariant evaluator;9 s7 w' R5 S f: J- ?- ^
EvaluateData start;! [+ N8 A; X G$ m. g% R9 s
EvaluateData end;3 o" L {! M& `; N5 N8 l% x) A2 M
6 t! G$ M* o* ~8 f A
( w- S: }; Y Q# z
evaluator = theUFSession.eval().initialize(theCurve.tag());
_3 Y: S4 u/ o; y6 Z0 R limits = theUFSession.eval().askLimits(evaluator);
: k4 j2 X7 i3 P; [4 y. _! |% ] start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);8 T+ A2 b2 m/ @
end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);
0 _" [* I8 E7 y7 J theUFSession.eval().free(evaluator);
) x3 d& O# T- a$ }. z2 u
; D% R" j' g1 x9 V6 H0 l- a% o8 p- J4 {9 H: l
return new Point3d[] # P" j: _$ K$ L' d N+ y U
{ new Point3d(start.point[0], start.point[1], start.point[2]),
5 i% X0 K2 ]9 w new Point3d(end.point[0], end.point[1], end.point[2]) };
1 u, `( w0 c$ o+ \7 c" o8 r }
L, p7 e7 P2 v7 V
( |' X) R+ Q( b/ y9 L, f' Q4 J# ^( [ I2 L7 B; B
|
|