|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
tag_t partTag = NULL_TAG;
, F/ s* c# p# e$ L9 kdouble origin[3] = {0,0,0};
1 b. K& e) ~# _ P# k6 Schar *height = "50";
# R# k8 Z( f* B7 L1 a" xchar *diam = "10";
. e# {& H5 p/ pdouble direction[3] = {0,0,1};, F6 A' c; n) b( g" q
tag_t cylTag = NULL_TAG;
, }- p$ Y9 m3 M4 M8 q* Buf_list_p_t eageList = NULL_TAG;; P3 a+ E7 G: e6 U( b+ H. O" r
int count = 0;+ K Z# A) ?/ d1 z r
char msg[256];
: c) e$ @2 M# o( G" b& x4 fint i;1 f9 K" ? i2 h, p
tag_t eageTag = NULL_TAG;+ p. F# }1 u# u& y
double centroid[2][3];( k/ B3 w# |, F8 {
UF_CURVE_line_t line_coords;( h( C( x' k" Y o
tag_t lineTag = NULL_TAG;
: ]3 {2 R- n4 n" V; s
5 W% _7 A. ~' y7 l/ W0 eextern DllExport void ufusr( char *parm, int *returnCode, int rlen )
% ]* h, X% F7 T{
r7 Q: S/ j/ Y) _( @ /* Initialize the API environment */
% g$ c/ ?+ i7 @: f& J U5 S0 j; y2 { if( UF_CALL(UF_initialize()) ) e% ~, M! @) d- |
{1 f6 A$ n6 z M+ A9 ]4 s+ t
/* Failed to initialize */- k: ^, ?: D3 M
return;' k+ d q) M0 H$ p
}% a2 A: i- l. P3 z
p d; j! B) F* I
/* TODO: Add your application code here */: v, g; z6 z3 M: ^6 i4 D
. n9 z* T8 `7 F, W4 P) \ UF_PART_new("D:\\part.prt", 1, &partTag);8 F+ \( q& X; D# y5 y
* }/ F0 v, J2 |3 y UF_MODL_create_cyl1(UF_NULLSIGN, origin, height, diam, direction, &cylTag);1 t! u, w+ M1 S; s }8 Y6 X4 r
UF_MODL_ask_feat_edges(cylTag, &eageList); p! b" F5 k5 [2 a9 |! t1 o: h
UF_MODL_ask_list_count(eageList, &count);
) z: u# m9 d% i: G$ C* r3 V sprintf(msg,"count number: %d",count);7 W7 y! [! Q2 ]% g0 y% [9 W/ r5 `
uc1601(msg,1);. e. d, K& k6 t& B4 t1 ~
2 R% K$ h$ g" q8 o1 u; w" | for ( i = 0; i < count; i++)6 j: E: O% | T' \
{) w6 o0 z: n- P7 E+ x T8 B; D0 @. T
UF_MODL_ask_list_item(eageList, i, &eageTag);//将对应边保存
) h( ~1 K* l4 ]: v, {$ R
$ q, i5 j0 |: ?- q+ ~$ S UF_CURVE_ask_centroid(eageTag, centroid[i]);//将对应的边的中点获取
7 @. s" X6 m; S( ]0 w1 _: h m }
$ ~6 G8 s% x3 W5 H* g 9 C6 [* U3 B. r3 d: f0 y. Q& N
line_coords.start_point[0] = centroid[0][0];//第一个曲线的中心坐标' _$ y, A) j2 |% o6 M. q
line_coords.start_point[1] = centroid[0][1];- r+ {; K2 B; ^+ c1 v6 ?8 }
line_coords.start_point[2] = centroid[0][2];) n2 d0 U& {0 v7 X& B
& U* e/ {) T0 [: Y7 N; Z- g line_coords.end_point[0] = centroid[1][0];
- A0 ~+ ^; ], p" v9 m" j& Q q line_coords.end_point[1] = centroid[1][1];
4 v8 V# S% s6 X' s) e7 L line_coords.end_point[2] = centroid[1][2];
$ O8 d6 [8 m8 \' u! O& ~+ e2 t
2 k$ T0 G# A' a" U0 a$ s$ ~, P1 J& Q UF_CURVE_create_line(&line_coords, &lineTag);2 I( Q, Y; Y T* n
UF_PART_save();
! e9 k/ w4 n* p: i$ j+ m, m8 y2 u, J& @- z# M0 P
|
-
-
评分
-
查看全部评分
|