|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
: h8 h+ O0 q M, m: h
' y8 j) L+ [& d! R+ ?* w) p; ]7 t W, |& Q2 S6 u
& v" V& X5 Y+ H: J" [% k
; u) k" ]4 x& Y7 b
UG NX二次开发源码分享:获取边或者曲线的起点和终点(java)% Z) {5 \0 K) z; R8 Q7 H
这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!0 O+ j: A) o: U" c; d
6 S- S. ]/ c9 W* q% M
+ m0 Y2 R6 ~$ T- M+ ~. v' A1 `
4 p4 w; W8 W+ Z# n7 I8 q% U4 b# D. N# b% v: d6 @
static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException
6 P# f V6 ?" ^7 K; x { d4 P: z. C* d5 @$ u
double[] limits = new double[2];+ ~( }5 U5 i0 n. Z0 y1 V* m7 V
UFVariant evaluator;5 L5 {: Q8 ?! @3 | }2 W1 m
EvaluateData start;7 v' A9 A1 `+ `( i& E+ l X' S
EvaluateData end;- m; Y/ i; D0 Z% E+ ^% j5 t
) o5 |' I$ U5 ?
; c! J n5 ?* g1 ^$ k evaluator = theUFSession.eval().initialize(theCurve.tag());2 ]4 J6 j, i2 C( p! N: k
limits = theUFSession.eval().askLimits(evaluator);: ?8 M& Y& }; h+ Y' w% A6 J0 L3 A
start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);
* ?5 i6 |2 B; R% J. L; i end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);
0 T# [7 h4 I* x7 k5 ^ theUFSession.eval().free(evaluator);
1 | N, n: F# [: v& r7 G: s
0 t( ~/ X3 k! l, ^
2 L2 g: G# ?" H% C! V+ p' J return new Point3d[] 1 I6 W9 T1 [0 z2 g2 X
{ new Point3d(start.point[0], start.point[1], start.point[2]),# G+ Q2 j+ D% |! c5 w
new Point3d(end.point[0], end.point[1], end.point[2]) };
2 a. c* w0 \1 z- y8 Z: A }
6 B( i) Q9 y' g1 N% a) h* t# w0 i6 ^( M% X5 {
1 \; a2 ?) t, I" \
|
|