|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/*********************************************************/
& W4 E* R( K( @: p. W; v) E#include <stdio.h>7 p8 f0 f1 i3 v" Y6 ^" H2 V
#include <stdlib.h>, }9 L* g4 D7 e/ H; e3 R
#include <uf.h>
5 S* ?; k s, M; {, z#include <uf_attr.h>
( g. t, g, ]6 P& q#include <uf_cfi.h>
/ Z, M) O: K( s% |#include <uf_curve.h>
4 w1 e* M8 g& k+ n+ w) F6 y! ]0 ]& n#include <uf_ui.h># S/ W9 d k8 }" I2 d3 B2 X+ `
#include <uf_modl.h>7 y7 ]. Q* B& [7 w; o$ k/ O9 Z
$ m7 m; J8 W) q3 g3 W. P, w7 P
/************* unload alloc mem *************************/5 @& r6 f1 y8 O2 h# J% L9 y- @
/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */1 ` ~ n$ g0 i
/ _; ]# a9 N$ g3 k, ?
extern void ufusr( char *param, int *reTCod, int param_len )
& b; |& k4 v$ Q{
: c$ L9 F. Z$ Q, P5 \ UF_initialize();
. C6 {5 {8 ]" {0 l/ i4 G8 n
! `+ B J5 w; p4 j }# A8 ^5 N
& m+ J9 i9 ?7 C G$ {6 P9 b double coner[3]={0,0,0};( C4 Q1 Q) K! t2 S. Z
char *edge[3] = {"10","50","20"};: l# M9 S% g, L' `; x% m& D
tag_t blk_tag;
6 f9 }! B- y. K; r$ Y UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);
2 ] j! G! R* E( B5 G. k& B W' M# w
! q- C8 G4 I; ^6 C1 E+ G( k
UF_MODL_ask_feat_body(blk_tag,&blk_tag);
- { J2 n9 A2 I9 N: K" k0 A* ]& m2 r4 L uf_list_p_t end_list;
9 Q& N- X0 K+ k c- O UF_MODL_create_list(&end_list);3 B, n$ j% D$ u% Y) \+ n- t% N
UF_MODL_ask_body_edges(blk_tag,&end_list);
7 Q" A a4 s2 n5 a& s) p int num;
+ P0 F4 k- V, P UF_MODL_ask_list_count(end_list,&num);
4 _( m2 s' [$ d6 U+ ~+ H: l+ i; w2 W6 S! ^ O
char *radius ="2";$ h5 h; j- f; X( p* u
int smooth_overflow = 0;8 J1 S) j, X9 {
int cliff_overflow = 0;
9 k" a+ S& F; ]1 A' w$ \6 b int notch_overflow = 0;( z- u$ p7 z j! U0 n
double vrb_tool = 0;
. l' J5 s# X5 Y9 j5 s& P; E tag_t feature_obj_id ;
" Z. @6 \/ Y1 c uf_list_p_t end_list2;2 A% Z# W. ~+ |" Q
UF_MODL_create_list(&end_list2);: n5 w! S' f# K& j
for (int i = 0; i < num ; i++)' r7 M( Z3 y! w
{! m1 i4 y+ s+ P1 M6 _/ O) O. ^( v. B
tag_t tt,curve1;
: ]) E! `* `- u UF_MODL_ask_list_item(end_list,i,&tt);
& A& E% ]* K7 ]1 l& V# W UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线
2 B+ F( I# o( u, |2 v* `! I double point1 [ 3 ] ;3 _& q' D6 W) i" W5 _$ m- O% X& i
double point2 [ 3 ] ;5 @6 A& I Y6 B2 v# u3 o9 l
int vertex_count;
5 x& c+ z5 U/ z1 h9 e5 C UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
5 p& y' X- z" ^& |- O% ^* b7 l if ((point1[0]==point2[0])&(point1[1]==point2[1]))' e( t q+ y4 S" S
{* Y" [4 v$ F' F/ T+ Y/ R5 y1 j
UF_MODL_put_list_item(end_list2,tt);9 o0 @! N9 e6 P8 u; [$ U
}
6 Q/ y J& V3 f) e$ k' } }
4 _/ D5 Q/ w1 l UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);2 B; M4 l2 x# @' A3 |& u f
UF_MODL_delete_list(&end_list);' j5 e' i" K" `) g* W1 K" D! h* V: Z
& i3 Z: B% m& Y0 H/ ?
UF_terminate();
W4 d7 g1 n; O& T2 P, S! X/ N* @ return;- j- E: D; B2 o' |3 ?0 j
}
5 H; w2 ~5 O* ]+ x( P7 h# T
, N: H' s e, l4 d4 uextern int ufusr_ask_unload()& u1 u6 H# c! [
{
7 X# O5 \6 Z ~5 `0 t9 K return UF_UNLOAD_IMMEDIATELY;
% |9 {! g9 e5 C9 S4 x/ y}
$ G1 [: w) G2 M# B; O9 {% Y" j8 ~2 H3 u) \0 _1 U
|
-
评分
-
查看全部评分
|