|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
' b" G/ y2 F# E1 `
% Y: @: g5 @; @/ o9 E
/ \$ h2 V* R% b8 c/ T7 P' `* |0 c, y
- P( u9 U7 f( H" e/ X5 ?) gUG NX二次开发源码分享:获取边或者曲线的起点和终点(java)
9 z" U6 `/ C6 z: R+ W" W, N这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!
( ~" M9 N' G* H/ Q- B# R+ f6 K: w w7 f, u( r4 }1 Q( b0 y
: D/ M) }5 e0 G& X6 R7 K. N' |0 F- J" i/ n# j) s8 q4 }
! K. N9 e, V0 g, [9 i0 Y
static Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException" }1 U* R H1 f; {
{
) A9 U a8 b5 j- ~( e9 k double[] limits = new double[2];
1 p, i) V6 Z$ J. W( m0 | UFVariant evaluator;
0 f4 w6 ^6 w% {4 N9 {& F9 B, L z EvaluateData start;
h- e( y2 [8 @ EvaluateData end;
; g: u+ |7 l! m
s. P7 b: P4 r6 J% P& u0 O
) a/ a p) r9 H2 H# R evaluator = theUFSession.eval().initialize(theCurve.tag());( g6 h+ Z' S8 _' h
limits = theUFSession.eval().askLimits(evaluator);; C/ p% s8 h3 r4 K& X1 e9 Z
start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);3 u% T2 y* h! ]9 z$ E' R4 l. E
end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);
. x, r2 F. A# ~$ a' r( q: X5 B$ g theUFSession.eval().free(evaluator);
! ^' ~% G4 L6 l+ ~/ Y& K
7 v, L3 h( Q2 B# W" C% `, a5 e' D$ J2 t8 g" D* ~. Q4 O
return new Point3d[]
2 `/ E& o S+ W K2 w2 D4 z { new Point3d(start.point[0], start.point[1], start.point[2]),6 h( m* Z5 M3 ~3 ]2 L. [7 r: {
new Point3d(end.point[0], end.point[1], end.point[2]) };4 |4 K+ `1 g9 v. b. |9 R4 G/ H
}: q) Z2 O; I, p
) M# y0 E' Q. S+ h0 K; u
& a* P; M3 ^) D3 Z0 v$ }
|
|