|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
7 W. Q6 u5 |; y4 V2 \9 W
2 H5 m2 ^5 f3 r$ m
: e( {. X8 T+ F' X" A, g" @* c* _- ~, D
. c& H! P+ g& d
UG NX二次开发源码分享:获取边或者曲线的起点和终点(java)
: R( u- x2 I# h3 C; h- U这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!& R# t$ `# M/ C- P
f* j% j- V# i& A
7 q* a; `+ I" R! G0 M& |0 H. g- w* Y$ c/ L+ i' S; ?. ~
/ W, ^+ N! a) ~static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException
& i& f3 }) [- X& r7 a& k- } {$ o8 B; E$ v: a5 L7 `* a& U( D7 c/ r
double[] limits = new double[2];
$ k. @& R9 ]0 [1 i% N7 y UFVariant evaluator;
2 _7 J) C( [) h l EvaluateData start;
; K: r0 @% o. [+ W; _$ M EvaluateData end;
" B+ [; G% |1 q5 ]8 t# ]. x3 ~5 Q! N' { V6 U9 y
1 N7 i) p& x( C- V3 D* Q. F
evaluator = theUFSession.eval().initialize(theCurve.tag());
4 l4 u* ~! q# { limits = theUFSession.eval().askLimits(evaluator);
. F4 o N8 m( S4 e) K9 f8 n start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);
8 n& W" E4 D6 W8 _: y/ i end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);& M2 ]) }- X8 H. l
theUFSession.eval().free(evaluator);
7 w: T( y( I a$ w0 ]) _" ^& R/ Z/ J! [
- L; y8 B7 y2 N6 S) q$ \. }( c
return new Point3d[] . q( ^2 n- m& F) R
{ new Point3d(start.point[0], start.point[1], start.point[2]),
0 x- V" T9 t' x; g3 V9 U1 x new Point3d(end.point[0], end.point[1], end.point[2]) };' m% w) d& y7 V A2 H9 T0 _
}& S( k3 B% I* D
- g) e5 a0 l q& [- ?( {+ C
# ?* u; ~( y s$ z' w: p |
|