|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
tag_t partTag = NULL_TAG;
% s! H4 n: X# a: b. R Y0 ~double origin[3] = {0,0,0};: b- w/ t2 ?2 r6 w
char *height = "50";
# [8 ?: |* N+ I8 dchar *diam = "10";3 H* S3 y( F& e& ~. k: t. |
double direction[3] = {0,0,1};
: \# Q; S8 f0 j8 W9 n8 h9 ltag_t cylTag = NULL_TAG;# e2 v9 q1 V6 X( n' O4 Q+ g
uf_list_p_t eageList = NULL_TAG;4 j' o1 Q# n8 D1 i6 }7 f
int count = 0;& F- D: S2 h* c9 x6 l
char msg[256];
) {, y% G* J" r* }8 F. kint i;
2 I# v" p; d( Otag_t eageTag = NULL_TAG;
% _+ G, Z- k) u" f* r, Ydouble centroid[2][3];
|) \2 s1 Y, a+ e7 ~7 mUF_CURVE_line_t line_coords;: R4 j: Y1 _: c! T) t7 l
tag_t lineTag = NULL_TAG;
6 k+ t4 \- H) q& u1 ^# |0 b" _: u) w4 f2 v, V. Y
extern DllExport void ufusr( char *parm, int *returnCode, int rlen )
1 @$ W: o" g' K7 ]{
- p0 \- \1 H1 m /* Initialize the API environment */6 |( w2 N" Q+ z# l4 }
if( UF_CALL(UF_initialize()) )
$ L' L) ~; Q, c9 A {; k* h$ F' \ S9 y* Y
/* Failed to initialize */
' t0 a) S( B) ^ return;
( n7 o3 O8 [+ B3 L/ r, H }. W8 H9 M$ _6 } Q
; i N4 S( Y8 U- F3 ` /* TODO: Add your application code here */
+ F3 Y5 U* q/ ^* W4 r# h# p# W9 _) X$ n0 U1 g, u
UF_PART_new("D:\\part.prt", 1, &partTag);) V+ F' \! F0 i* \8 P# Y0 P0 ^
+ O. V7 b) Z0 Y; @( y' m" n
UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);; o( ^7 \ K- c: |! E
UF_MODL_ask_feat_edges(cylTag, &eageList);
4 M$ s( d6 k# p! l6 I4 A9 D UF_MODL_ask_list_count(eageList, &count);% h: ?+ I- O/ q& y l+ Q
sprintf(msg,"count number: %d",count);
& }% g! X- ?# n8 k4 R1 Y uc1601(msg,1);
0 D0 z+ i5 g# }' i: m" L; b
) T7 r9 Z [) }/ o for ( i = 0; i < count; i++)
+ G$ }6 Q) e: o0 P4 z8 Y7 ` {
' X4 M! V, S3 K* E& M$ M UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存
2 e& o; r8 _$ E# a
6 Y, Z9 y: k- h' p* T$ b UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取
$ P) w# k3 ^# Y3 `4 Z }
0 I4 W2 U* X& R) V; `( C% Y2 o" @) Q
. A. a: N' y# ~3 `* ]8 k line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标
' p# k+ q$ P- n" }/ N line_coords.start_point[1] = centroid[0][1];: m7 s! z# _6 | f4 Y
line_coords.start_point[2] = centroid[0][2];
; t8 t- b2 T( l0 J5 l& L1 e( ?0 \- d
line_coords.end_point[0] = centroid[1][0];
$ v4 m# s4 Z/ ], B: S5 O line_coords.end_point[1] = centroid[1][1];. j: t9 u4 L, [. j
line_coords.end_point[2] = centroid[1][2];$ L. \# t1 S% C2 W: K
: o0 D8 X9 O" L( }9 u0 e1 @ UF_CURVE_create_line(&line_coords, &lineTag);) ]% @- R: Z. q
UF_PART_save();8 {1 Q. B: g/ D
! ^ j+ G, P, d, Y6 o5 o |
-
-
评分
-
查看全部评分
|