|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
tag_t partTag = NULL_TAG;
3 s6 @& v7 [9 E0 _1 h" e8 X& Rdouble origin[3] = {0,0,0};
9 a: ~" ?1 H% t% T' B/ Cchar *height = "50";
# ] W+ N3 v* Z7 r7 _char *diam = "10";
# S! s U3 n2 a4 C: L5 adouble direction[3] = {0,0,1};
6 ~, S' k2 u: _$ ^3 ]5 A; q etag_t cylTag = NULL_TAG;
+ U4 o5 p% e- m/ X& T8 E$ b4 `uf_list_p_t eageList = NULL_TAG;
0 B; A0 T/ P; Lint count = 0;' b2 ]4 o. z# h7 ^* _2 m
char msg[256];9 r; \" }7 i6 C
int i;5 z. f+ }! D* J2 J# F6 i$ [
tag_t eageTag = NULL_TAG;- L I; r5 u. K; V* W2 b- j' n
double centroid[2][3];
! Y1 L8 z% G( ^UF_CURVE_line_t line_coords;
* a1 @. K* f- ~" }: ~! O3 _7 ktag_t lineTag = NULL_TAG;8 F# h2 a, y2 L- T
& A8 y& B5 m; l# z7 |extern DllExport void ufusr( char *parm, int *returnCode, int rlen )5 E; K* c5 A8 x6 X" C
{
' `& D+ \# \( H2 L8 ~ /* Initialize the API environment */
& w/ ]2 v4 t! _0 n if( UF_CALL(UF_initialize()) ) 9 G9 s" A2 f, g+ n
{
- F5 V; R/ r9 J \5 s/ { /* Failed to initialize */; A8 k1 X6 X( l; T4 q; g; q4 B
return;
! d& f/ w D6 r0 x }
. [7 a! J# A9 j6 c
( J/ {' p( [# ?/ n/ O& s3 `4 C /* TODO: Add your application code here */: z3 t& I/ k, E: x
1 ?( @1 f7 G$ R) {% `, y0 E UF_PART_new("D:\\part.prt", 1, &partTag);
1 H; l1 H. I+ r" i6 `) w5 i
8 ^: M/ x6 w/ F& i UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);
* ?+ ~% L% ~3 X) }7 d C) N9 j UF_MODL_ask_feat_edges(cylTag, &eageList);
$ n1 v* o" y$ [ UF_MODL_ask_list_count(eageList, &count);
- w) [, S2 H! |# e sprintf(msg,"count number: %d",count);- [+ g! \& _$ ^5 ~* e
uc1601(msg,1);
$ [! J5 \/ g/ M; E J b8 w3 t! W" o1 r, i2 G0 e
for ( i = 0; i < count; i++)
7 P) w, ~" g* d* I {
* c% `9 D8 h- y# H& v UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存3 U* t; U; E& Z* W; G0 n6 a# [; u; E
" H; ?. I b& s4 S4 X: X UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取# k9 c. C/ |% _+ U: |& S7 _1 R
}! i; v( Y" `; O& I
, \7 @3 Y& i `& h" N+ o
line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标( N' `: J+ r# t; b
line_coords.start_point[1] = centroid[0][1];! G( @4 x4 [8 U* d
line_coords.start_point[2] = centroid[0][2];
; K! q# }, R4 C7 s3 i
$ F# Y$ j# K% [2 }' j6 u line_coords.end_point[0] = centroid[1][0];
R; I& p/ n9 o line_coords.end_point[1] = centroid[1][1];3 [6 q7 a% \, e) M6 d- O
line_coords.end_point[2] = centroid[1][2];1 X+ B" i/ y! X2 t
; Y' c; j. i# [
UF_CURVE_create_line(&line_coords, &lineTag);% `' _' _0 ~& a9 E
UF_PART_save();
M8 t6 K1 e( k# m+ ^. Z: n6 J ^! M! ]; z# j
|
-
-
评分
-
查看全部评分
|