|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
tag_t partTag = NULL_TAG;
) x9 t% ~% b/ ]* r, z% e' i7 E8 Bdouble origin[3] = {0,0,0};: O! n7 X2 Z' m
char *height = "50";
% k0 B+ U9 [8 N- tchar *diam = "10";
# v2 `1 x* @) l% t& ?double direction[3] = {0,0,1};
5 ]% a$ F4 ^7 s9 m- X5 htag_t cylTag = NULL_TAG;* u) Z. Z- Z" o) N2 d% i0 V
uf_list_p_t eageList = NULL_TAG;
& Z. |+ B! W w; Hint count = 0;0 B- K" M% {5 @ H; J7 g) T
char msg[256];& v" l3 X% W1 I5 K' P
int i;7 k) m' H" J% I7 ~4 T
tag_t eageTag = NULL_TAG;7 ?" z% y/ p% _
double centroid[2][3];; J5 F e5 P1 r& E
UF_CURVE_line_t line_coords;
/ R. l0 a1 }* O0 h/ z; v4 d$ Gtag_t lineTag = NULL_TAG;, W& c7 w7 V8 f- j' i
( y& ?3 ~- S! K# O. x R5 D% u
extern DllExport void ufusr( char *parm, int *returnCode, int rlen )- n" y9 z$ _2 p' E3 C
{
! R4 Z, Y) h% k4 [ /* Initialize the API environment */4 K0 Z3 D$ u+ M% m4 ~5 }0 d( ?
if( UF_CALL(UF_initialize()) ) $ X2 \& T4 o0 `, G( D8 R$ b
{- `4 N4 n3 C; u- N/ s
/* Failed to initialize */. M: a+ O: s5 \* }: {" E
return;8 N- d0 x% j) S# n
}
0 f: Z7 f- t1 Z! y* t5 x; x
) l! |. |5 E+ _ c /* TODO: Add your application code here */+ l! R8 C% Z: R, ?: C* x2 J7 ~
$ c7 E9 j2 F: f* g' d1 ` UF_PART_new("D:\\part.prt", 1, &partTag);' J9 c: ?3 N2 t' w/ M, p
8 {# H& X! B& C6 ?$ X& O
UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);
5 j- {: c# _' O! o9 _ UF_MODL_ask_feat_edges(cylTag, &eageList);
8 q) B6 l# R U% I) Q: ] UF_MODL_ask_list_count(eageList, &count);
6 ?" N v% C; R; N' J" i! ~ sprintf(msg,"count number: %d",count);
( F& A* @ Z+ }6 R: ~ uc1601(msg,1);
$ h% j0 a- K1 j3 [" L# ?/ q: @( t2 r: n3 N8 |) D% n/ ~
for ( i = 0; i < count; i++)! X+ _& {0 ~7 _% e2 q6 I% }
{
4 v7 ^0 a O3 r0 ^- Y. z, Q UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存" i# G1 S+ d" l" ?
, O" q' D$ U! ]3 o' W) c. J/ n
UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取" }, s5 c% z& B1 g4 ~( Q1 u t
}
5 H' M: G. s( C+ x& e' n
; u# H: S1 G/ N0 k+ @! J line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标
# t( ] A' N# ~9 U' z8 I$ t line_coords.start_point[1] = centroid[0][1];
( [6 ^& M5 Y v X c0 [0 V line_coords.start_point[2] = centroid[0][2];* d7 A! O$ F$ X
4 m6 K. l+ O s3 S line_coords.end_point[0] = centroid[1][0];. ^5 B5 w; S, f7 Z3 \* ]# E( O
line_coords.end_point[1] = centroid[1][1];; q' d8 W9 l; R/ d, k9 ~
line_coords.end_point[2] = centroid[1][2];
: ]% ]" i6 J8 M) S7 w$ @& D0 n/ x% u) K, j0 c
UF_CURVE_create_line(&line_coords, &lineTag);
& |( M# ^/ W* j6 \( } UF_PART_save();% ~" b3 T$ Y4 R
4 _! x" b# B) P2 r; H5 | |
-
-
评分
-
查看全部评分
|