|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/*********************************************************/& ~: s1 Q; e& L) ]
#include <stdio.h>; a+ z6 k6 A/ r Z& d
#include <stdlib.h>. W1 S" z" i; D/ a2 V
#include <uf.h>* O0 ^: J: F; J3 ~
#include <uf_attr.h>: m+ }) d! l- e( S
#include <uf_cfi.h>
. I. o! Z5 I9 _# }: \. O#include <uf_curve.h>
# u# i& O7 F! S; }* z" |5 Q9 @#include <uf_ui.h>- V' H m) \) a9 j
#include <uf_modl.h>
, \# |0 Z; ?% C/ f) Q5 H0 K. D# P$ P i. j, N# r7 f- @: \6 r
/************* unload alloc mem *************************/
/ |* q2 U; I5 D1 q6 x/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */# o" @8 m, @4 l- }# ~% |
4 [$ }/ o7 F" t
extern void ufusr( char *param, int *reTCod, int param_len )* N" l% {( n8 B/ ~! p8 g3 o
{) W$ U% e, c6 {% K* W
UF_initialize();. e3 w8 a# X- K% L
$ P, c* }& V: y; R. o1 O7 |3 I; l/ [, Q+ R9 v$ N
double coner[3]={0,0,0};5 d0 ?# A+ o, W+ @( N
char *edge[3] = {"10","50","20"};
& ^. B( T7 @$ K: I: C tag_t blk_tag;/ ]8 S9 ^' X) J) Q
UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);7 @7 y' L' z' f. @8 o& l: N
1 ~' Y9 R2 d4 s8 [2 o
9 u8 s( R+ X& V* { UF_MODL_ask_feat_body(blk_tag,&blk_tag);+ g% ^! A( k( B. Y x% c& k$ ]
uf_list_p_t end_list;
$ t; J* R" E2 o& y UF_MODL_create_list(&end_list);
+ B% ?' i0 P& ]* b3 V UF_MODL_ask_body_edges(blk_tag,&end_list);
) w( R5 Q8 s2 J: c; N int num;) _* ^. j- @% d; F6 u" j I: A4 \1 d
UF_MODL_ask_list_count(end_list,&num);4 C8 e% z" m6 K2 r: J
' x5 ~$ H+ ~; z8 ~) a$ a; W
char *radius ="2";
0 [6 k; u( f- B0 k& z3 p$ v int smooth_overflow = 0;+ [% B- C! @" E$ Y, U0 d1 |
int cliff_overflow = 0;
1 Q8 a" `$ k: U& r; H/ [4 U int notch_overflow = 0;
- O) f* d4 s( y& x9 p8 e9 r! a4 F/ Y double vrb_tool = 0;1 J# n9 Q3 H5 G4 f
tag_t feature_obj_id ;& _ H" }% Z0 i
uf_list_p_t end_list2;
: u. R+ J% S: R# m# v1 A- I UF_MODL_create_list(&end_list2);- b' M- F! C$ @5 c
for (int i = 0; i < num ; i++)
# V5 V) A7 ~, |7 V" o6 }3 Q5 f3 O {6 W& m, S3 `' q5 L2 S, ^
tag_t tt,curve1;* h5 T, ^( {9 a" A
UF_MODL_ask_list_item(end_list,i,&tt);
0 @- F% [6 Y% D+ O1 ` UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线/ W* F; b7 A* T/ D; @2 H
double point1 [ 3 ] ;0 J/ _5 R2 _# T
double point2 [ 3 ] ;
2 X" g) W; Y7 f8 P+ x$ A8 [, A# | int vertex_count;
6 F- p6 K h5 _2 x4 P UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
7 h% J. K# ^" [4 `! z4 d if ((point1[0]==point2[0])&(point1[1]==point2[1]))
6 [- r; |) y S; M) y6 B {
T* }2 I5 G: t: I; }: o UF_MODL_put_list_item(end_list2,tt);) T8 r& N( |# Y; T
}
" Z+ K( n8 D: _" c }% \ `( I0 m- j/ W, M& u5 q0 R
UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);9 \+ p- E/ i% N
UF_MODL_delete_list(&end_list);
r3 G& B6 j. s/ @; r5 }! m! B" `, Z3 Z1 Q, Y& E3 w/ f
UF_terminate();
; K, A" _( `0 @ return;
`* i+ A- K( o}
; R7 N# T* {5 ~7 p
7 [/ M9 v$ M! J! A" U5 a2 Textern int ufusr_ask_unload()
/ O- F. F4 q: ~% r& L6 i! o{4 t o' E9 m% @$ k2 F+ W S2 d4 q" [
return UF_UNLOAD_IMMEDIATELY;
' R) \7 o0 A& f5 b3 x}
* t. r' @( l* y; l4 x c4 ?. L
5 R5 d% L: w- J |
-
评分
-
查看全部评分
|