|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
tag_t partTag = NULL_TAG;, F. g8 q- }! j2 K5 j; W: o0 K1 u
double origin[3] = {0,0,0};3 X! l/ Z' B+ d
char *height = "50";- P+ P- W6 I- P) G* \
char *diam = "10";# b8 o" K. x! k5 W. H
double direction[3] = {0,0,1};
9 J7 i/ \3 N$ z9 {+ Gtag_t cylTag = NULL_TAG;
. W0 l5 C% D& |, juf_list_p_t eageList = NULL_TAG;* m9 D3 T9 |5 z h4 @, s
int count = 0;; f/ k2 n) y9 L9 \2 P/ N+ Q* ?
char msg[256];0 F, l3 i# B- v% d1 d
int i;
; y2 ]( Z. y, ]" I e% Ktag_t eageTag = NULL_TAG;% e+ [6 R Q/ J$ e+ v3 b. q
double centroid[2][3];# G: d4 `9 \; j! y2 I( T5 y' @7 e
UF_CURVE_line_t line_coords;
! ?2 H0 i5 f- y, R. S! H1 W5 P1 Xtag_t lineTag = NULL_TAG;
! l2 E$ f) X/ H# i
. k `# L1 n3 z ^- Z- Z2 L4 \extern DllExport void ufusr( char *parm, int *returnCode, int rlen )
& p$ w: d$ }" T: \{# ~, i# g( `; I6 v
/* Initialize the API environment */
- b& `6 a1 C3 H if( UF_CALL(UF_initialize()) )
$ _# }) `0 v& y( ]- q2 M {( Q0 e% n7 g% d) b
/* Failed to initialize */
4 [& d! X4 @8 B9 c* I: t/ X return;1 z" n1 ^& w% |; x1 g$ V
}
8 [ t6 `- o1 R/ Y
( K$ X, V1 h) A8 @* H /* TODO: Add your application code here */* o7 \) d7 ?7 ? f( y5 }6 _; J% J
4 ~* D3 i# u. r
UF_PART_new("D:\\part.prt", 1, &partTag);3 t1 W5 x4 h- X
! t* M# b$ A* x, \ UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);
. E4 T/ Z- n9 J5 C UF_MODL_ask_feat_edges(cylTag, &eageList);
" S e+ f8 | P. \; E UF_MODL_ask_list_count(eageList, &count);
1 F! r9 T: q, R+ ~ sprintf(msg,"count number: %d",count);
# e% ^9 Z0 @( U" c8 U' e( ` uc1601(msg,1);
7 a2 b3 j, W. F" j4 L
# n/ i: R) F3 X: Q6 ^ for ( i = 0; i < count; i++): O; l* ~$ [% P u5 }# b. W' o* |
{
2 x! K: d) w, ~% y UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存
0 V" Z8 ]/ i# u. {3 U: f S
# j( v$ D* j. h6 Z) E D UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取' [) j v. x4 j* _4 P" w
}
0 y, N( g) F; C! f5 M# Y' W
3 ]; J- y5 W* g! M' ^ line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标& M7 N6 b% I7 @3 j4 f$ j
line_coords.start_point[1] = centroid[0][1];
; q+ |0 o; U6 ] line_coords.start_point[2] = centroid[0][2];
9 i1 Y& C8 O2 B2 \* |8 P& p
1 k9 D4 ^; ?* O: l7 C8 ^ M8 b line_coords.end_point[0] = centroid[1][0];
* Q y# t2 b( ~5 Z line_coords.end_point[1] = centroid[1][1];
, E7 N* N: K/ x) k+ b6 y line_coords.end_point[2] = centroid[1][2];
. G* @: M& r: N8 M! c# _& C6 ~1 Z8 [+ U e z0 _
UF_CURVE_create_line(&line_coords, &lineTag);& H8 Y6 S+ m$ F4 O+ s) v$ k
UF_PART_save();' M8 Q* h n' b. ~9 i: E& ?, p! X
/ f+ M- Q% S8 r5 z |
-
-
评分
-
查看全部评分
|