|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
& G4 c X# p: }' L+ R4 d; L( U Q# w
* B3 P) L- f8 k. P+ O# q
$ p$ g8 W+ F1 @3 @* C c3 z! A; X* Q* j
UG NX二次开发源码分享:获取边或者曲线的起点和终点(java)
2 |6 U1 `: ~+ S2 |3 S0 _9 J6 S" N这里做个参考,你使用其他语言类似,对于一般的曲线,建议使用evalator进行解析!!
4 |- @0 M/ U. W( q. m; r3 C
. K1 M/ _ {$ u$ S# Z& J
) O/ S3 G9 \6 x* e9 Y4 Y' h
( O* i4 |$ ~( w! C0 ~; a1 M
0 X r' ^+ R% Cstatic Point3d[] askCurveEnds(Curve theCurve) throws RemoteException, NXException
/ U+ Z" y6 U6 f% l+ G& m {
* e; A; [2 q$ o) R' N$ `. C double[] limits = new double[2];
# l+ J7 f7 t6 t1 a; T, m; N3 U UFVariant evaluator;
/ ^: M1 M* O' O& K& t# B! S EvaluateData start;2 x9 W" b" F d% i- F
EvaluateData end;/ u- H6 z* A: H3 S% ~1 X
3 V1 f6 N( z& n; s) K/ D4 S
: N+ y H: q" x& M* T
evaluator = theUFSession.eval().initialize(theCurve.tag());
- K4 }( t, W2 x2 W2 s limits = theUFSession.eval().askLimits(evaluator);
8 G6 o6 d' B5 z( F, L2 } start = theUFSession.eval().evaluate(evaluator, 0, limits[0]);; D ]3 z( x: O
end = theUFSession.eval().evaluate(evaluator, 0, limits[1]);
& c' E# H1 K }- B# e$ T theUFSession.eval().free(evaluator);
. \6 b+ Q7 ]$ e% t
, `. W" Q0 K" [3 I" a+ V) K6 ~1 G% ~1 d( ]5 O$ B$ ?
return new Point3d[]
( J: E/ i, o. `; w8 ` { new Point3d(start.point[0], start.point[1], start.point[2])," t( k0 b3 |) Q& m2 u
new Point3d(end.point[0], end.point[1], end.point[2]) };" b6 e. C1 ?0 p2 b, E7 ^* E2 L
}
, W1 `7 |2 r9 F3 r' b% w- ^% ~' k9 u% h w
: ^% b* `& z& U( y' q+ j |
|