|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
tag_t partTag = NULL_TAG;* _. P4 j& v, c" j
double origin[3] = {0,0,0};3 k( \9 h9 b0 M' l
char *height = "50";( e: q2 W( g0 T {1 P+ @
char *diam = "10";7 H# ^( t& n9 @5 i( `2 v6 Y. {
double direction[3] = {0,0,1};( Z: z; o* p* A, U+ i
tag_t cylTag = NULL_TAG;
# O" Z: O3 U/ p" \uf_list_p_t eageList = NULL_TAG;1 ]2 U, u+ l/ k4 T! {! Q
int count = 0;
: G: J' `/ ] X) ~* E( qchar msg[256];
( E5 G8 g) R L ]2 C7 i) ^& j; bint i;
6 W) J6 \) B" Ttag_t eageTag = NULL_TAG;
2 j: e X8 O! n+ `; qdouble centroid[2][3];0 A7 T; z6 p) b- H! q5 N
UF_CURVE_line_t line_coords;
" D! O. |- D8 e1 {tag_t lineTag = NULL_TAG;% s8 P" c' K/ B8 M
! \8 H# S! T, c) c0 t: I& q9 @, Mextern DllExport void ufusr( char *parm, int *returnCode, int rlen )
0 \0 L/ w& B' J- s b; Z{+ y( r, h5 ]: |" b3 z
/* Initialize the API environment */
8 }; ]8 {& |% u' _$ ^4 W if( UF_CALL(UF_initialize()) ) F* D5 Q+ v0 |& b
{% Z' O; a+ X5 g; K n
/* Failed to initialize */) @0 K* a$ q1 i1 @- c! Q2 T
return;' K, [0 D) j6 v
}
% L! P8 ]& U/ G2 o7 y8 h7 Z/ u# U$ F7 {1 j
/* TODO: Add your application code here */
& r! `( g) I* B& \7 v
/ a2 K+ ]( v) n) }. f. b$ v UF_PART_new("D:\\part.prt", 1, &partTag);
7 U# t; ? c( l* n) y" {) F$ n; C& b
! B' k/ u: y+ b UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);% `0 U' t3 c9 b7 ~( g
UF_MODL_ask_feat_edges(cylTag, &eageList);" r8 E, g/ G% T5 r3 N o% e
UF_MODL_ask_list_count(eageList, &count);
: Q- D( ]5 I5 d sprintf(msg,"count number: %d",count);( V; K* }1 g9 u6 C
uc1601(msg,1);
4 m0 T9 [$ c& O; F( @9 ]$ U' W" p2 I
for ( i = 0; i < count; i++)
1 F2 v5 V6 z! C" T6 J: u {$ k& i6 j! ]& e. {( e* I( S1 a
UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存
! k6 D/ x0 b4 ^. _% u' o8 H9 l
" T+ w5 l* S# F; w9 a4 ]* V9 A UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取8 [- L" Q. A0 D' M( e& A# y; H: _
}, L# `, Q: ^7 y% {8 h2 d
! f+ a7 X0 s& R" m/ e1 _" S1 w8 f4 O
line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标
1 }1 {; J) |" X line_coords.start_point[1] = centroid[0][1];9 E1 |0 b, ~. U0 \2 ^3 }
line_coords.start_point[2] = centroid[0][2];
1 f9 ^9 c1 @) k+ H) z7 @! |, F* P& X7 H2 l t$ t" C5 |
line_coords.end_point[0] = centroid[1][0];
! ~5 m: h0 c( I4 r t' K/ h( I line_coords.end_point[1] = centroid[1][1];
6 V0 e- h$ i% {5 W line_coords.end_point[2] = centroid[1][2];# m2 I- s6 I8 o
4 D0 Q+ M% w# K" O, ]% h
UF_CURVE_create_line(&line_coords, &lineTag);. |. f8 e0 w3 _) [. {* e: C
UF_PART_save();) Y4 A7 j5 s, W
0 J- `! b' N! y% O
|
-
-
评分
-
查看全部评分
|