|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
& |/ l; g* N" h. J2 _7 I) W. i5 A8 _0 I1 [7 k1 m5 n
8 A- I/ B. ^4 z5 e9 Z4 Z( H' {7 Y0 A) _& m: U; r% k
5 E, d$ f; k, \0 P3 D
UG NX二次开发源码分享:获取边或者曲线的起点和终点(java): d' C) f3 |" g4 L% K
这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!' z2 f, ~1 j/ |# R
' S+ Y/ A, R$ f: @+ a% y' `5 s
& d$ Q F/ G0 t$ G6 M3 S' Z- w7 v+ v2 e( Z, k
4 {' g: Q {! a% f4 y2 P4 K
static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException5 b/ i3 ?3 j t0 {3 `+ k
{
! h' e# B$ ?& J O double[] limits = new double[2];2 L/ t5 p/ V' w& _! P E6 v/ Q5 d
UFVariant evaluator;
) Q; q. u8 s% P {9 i) j( ? EvaluateData start;
! h- Q# \ E( T& r: S% [ EvaluateData end;
1 Z5 v7 \% Y: t' D8 U, Q( Z3 N, F5 M! ~3 K# X! f# M3 t; Z
) d9 m6 M7 H" i% G
evaluator = theUFSession.eval().initialize(theCurve.tag());
# j. _8 \& p9 s: B: D$ l% u T limits = theUFSession.eval().askLimits(evaluator);
' h1 I& _7 K! Y. l start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);& ?' P( n3 e1 @1 L& ^0 U: p ^& q
end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);1 J# _- B& w. [. @
theUFSession.eval().free(evaluator);6 ]4 i- x, P: Y. }/ R
% U9 l$ _& [" o3 z9 {8 y# O D
. o+ S& K: i( v) O
return new Point3d[]
# \3 m, d6 H3 K3 |& R# X { new Point3d(start.point[0], start.point[1], start.point[2]),
( G: p/ E6 W6 C L- I- }) F new Point3d(end.point[0], end.point[1], end.point[2]) };' l* Y/ ^% Y+ m6 m2 G
}
4 W3 Q- n S3 m
: O- a+ F' c$ X: G$ L$ e; _
! }( \6 D" ~+ J8 K% N |
|