|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/*********************************************************/: g0 X: ]: I' f# X
#include <stdio.h>: ?6 O, {6 h5 u! \, a C
#include <stdlib.h>
1 ?6 g8 i" p% K, b* O; p#include <uf.h>* u' O+ a* r E- U. U: F% ?: @
#include <uf_attr.h>; Y$ X1 O% e1 F, Y5 |/ J
#include <uf_cfi.h>; \+ f- ~ H4 @$ i4 V/ [: d. U4 B
#include <uf_curve.h>
) B' B$ G( ~; }0 X+ q$ m m0 ?#include <uf_ui.h>
: w1 P4 k- |( z#include <uf_modl.h>
) A V# l, f/ W, p$ F3 N( Y$ E' a0 N& N7 Y* O
/************* unload alloc mem *************************/) v0 `4 p8 o% B; c* ^3 f; H, b
/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */% w2 q$ m4 d, ?3 B# E
9 _4 ^! z, v9 Wextern void ufusr( char *param, int *reTCod, int param_len )
! d4 G' \ f! C7 F# c7 h{
& s. J# Q+ s9 ^9 c UF_initialize();* C% N7 f% \. {8 Z, \
; u% W6 E6 T1 q8 j1 @- M9 B$ I( u
. ]0 E/ _& ]4 V. t# @' L
double coner[3]={0,0,0};7 F1 s! t* A2 q$ k
char *edge[3] = {"10","50","20"};
- z5 o* x5 r. _ tag_t blk_tag;9 h. Y2 x" {; ]+ j
UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);
* z; l' k* B0 B! d& c) n
. j B1 @/ s9 V- R5 x( ?/ J" d C/ u- g$ f+ @" j
UF_MODL_ask_feat_body(blk_tag,&blk_tag);" D! Z8 M* K5 d) S- _
uf_list_p_t end_list;) M* m; V# Q x
UF_MODL_create_list(&end_list);
, |! r) H. o% b UF_MODL_ask_body_edges(blk_tag,&end_list);
1 Z! G0 X$ G- c, V1 d int num;) @! c/ \: X5 `* c& z2 P
UF_MODL_ask_list_count(end_list,&num);
7 h9 h2 Z) F N% ^' o( Y
0 ?5 s; z, S2 B1 Z char *radius ="2";
4 j4 L7 _. @: N9 w0 h2 `% y! N! z int smooth_overflow = 0;
0 Y) q5 {$ o. A4 O5 J( |" n int cliff_overflow = 0;6 b- L% Y( W. O. D5 O9 K
int notch_overflow = 0;
D( b( w/ `4 V double vrb_tool = 0;- \# l9 [2 M% i) ~) J- G, J8 M2 X, }
tag_t feature_obj_id ;
; k4 Q; O4 v& B( ] uf_list_p_t end_list2;5 c8 B% b9 B+ |: X- S: \6 P0 C
UF_MODL_create_list(&end_list2);; ^5 P! w) g1 G7 T; U& [# o
for (int i = 0; i < num ; i++)& O" O' Z! W& U$ w# G/ C: B
{" @9 x6 a! f6 c2 Y
tag_t tt,curve1;
9 L5 }. @* d& y$ J% [: f. @3 P8 ~ UF_MODL_ask_list_item(end_list,i,&tt);9 u1 x! p1 u9 q- Y" p
UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线
9 m3 @# X6 x" C* r' V) C double point1 [ 3 ] ;
4 h. b& f4 S. @, ?; C7 X6 i double point2 [ 3 ] ;, C) s6 b% [/ }
int vertex_count;
2 J' q( }2 {) z- _3 p UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
% A: r& Y- A' `$ Y if ((point1[0]==point2[0])&(point1[1]==point2[1]))# D$ O. b m! v5 h$ U
{8 |, B+ s$ H( W( }+ Z$ t
UF_MODL_put_list_item(end_list2,tt);
6 R* K* C% z' |, E3 I$ R. M2 m }. b0 L$ s0 |2 S
}
( L! [' Q7 n% R$ i/ C UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);
* r% F0 K& o5 q- x UF_MODL_delete_list(&end_list);
, X3 r! k' I8 G" c) c
& a# p0 P7 o3 L3 I% V! T4 B( u. |! H UF_terminate();( B6 \1 C) ], h
return;
! X, e+ G( _& G}$ W) M, p0 w- h {- q
5 f4 U+ ?+ s7 ?. Uextern int ufusr_ask_unload()
. u( n( q' _8 c4 W( y1 K$ o! Q{2 K2 p% i9 e6 |9 @ ^3 B. s5 v
return UF_UNLOAD_IMMEDIATELY;
$ [( _+ m0 l0 n- [4 G, F}
: A* B8 B1 o7 j. o0 N( M& D/ R" m) ]; p( y* ]# O; c
|
-
评分
-
查看全部评分
|