|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
% g) ]% C/ ^' ~, N+ X0 M/ i$ I# i/ [7 u: f$ {4 j3 x# L/ W
7 }: k% D# d% U& ~( a' [& G( o6 v6 P# x
) w' I- b7 ], yUG NX二次开发源码分享:获取边或者曲线的起点和终点(java)9 h. C' o; Z2 [9 t& G4 v6 q
这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!7 T$ F' M4 e9 ^, {
% f* L5 E* C l5 U0 W' [ l
. ?) H! @. s) L; J
! N9 {+ m# B" @! ~( u
$ D8 I% x4 n7 O( I( [/ K( c
static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException1 q" `9 r& q, ~( T" Z% o( O1 E
{( T W% ]! u, w& }: O# f. O
double[] limits = new double[2];+ N$ {* H/ B4 c. R. Y
UFVariant evaluator;5 m9 h" k; L% g
EvaluateData start;
* _: \" R" L% T* {6 A8 r EvaluateData end;
. f ^! f+ J; O N2 M
- d$ l# e6 s# x
5 e& j' d0 H# h9 Y3 H. F! \ evaluator = theUFSession.eval().initialize(theCurve.tag());
6 |' e* F4 Z( E" l- }1 i; ] J: Q7 D. S limits = theUFSession.eval().askLimits(evaluator);$ b+ d3 ^5 K/ P8 @4 w8 E
start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);- C1 R1 t8 ?# R' D
end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);; S# r; x0 T, t. Y
theUFSession.eval().free(evaluator);% F9 q4 @" e$ x; K. K% E; c' A
+ u: {8 |) i, J1 e2 q
# ?0 |. b" m# ~9 J5 _& Y0 Q' [ return new Point3d[] 6 r4 {1 i; U4 C7 I; r2 k- I2 y
{ new Point3d(start.point[0], start.point[1], start.point[2]),
. K8 @% M$ t$ E# s/ f8 l new Point3d(end.point[0], end.point[1], end.point[2]) };) R# F0 ~9 n! h# `2 J
}3 C1 C) W( a3 F1 G2 r
# o: }0 A. Y! F C4 q1 a2 I% A' b
( d4 ]! d5 [# }2 r% p/ G1 O |
|