|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/*********************************************************/
* ]# D; z# a# o. Y% n#include <stdio.h>
d2 L) L2 e, A# { P+ C#include <stdlib.h>5 [/ f' o5 h8 ~) q/ U& X
#include <uf.h>
- \/ P: {% G) |7 H* _#include <uf_attr.h>
6 r2 ]) w& @& n#include <uf_cfi.h>
- X: M6 x9 W, b3 e$ ^5 k#include <uf_curve.h>
) a" `- H+ E) Y( O+ u% W" Y K& q#include <uf_ui.h>0 v1 ?+ F; F/ Y
#include <uf_modl.h>5 C* T4 f Q, f$ f
- H9 O! H1 |# B4 \& F1 s, V+ m0 B0 `
/************* unload alloc mem *************************/
# K3 b; A3 |$ |. }! i3 j/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */+ C& l% `8 Q( l1 e k
/ T' z0 g+ t: y( U% q2 Q3 n
extern void ufusr( char *param, int *reTCod, int param_len )
! A1 |8 x" ^8 V' R" D{- L) m, v4 F9 i" ]6 v$ c" D; {
UF_initialize();# V Z7 u! e/ ]2 M
1 g4 s, m* E7 B4 p
) L' I; c( t/ B. \9 b; S double coner[3]={0,0,0};
0 Q0 O. ]0 g- W6 d9 f. L. r char *edge[3] = {"10","50","20"};
$ i2 n3 K2 @; Z* l" _; m2 s tag_t blk_tag;8 m' J+ [# ?" ^ h0 X' |: f
UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);! @9 b3 l2 @" f# ]0 D
- j6 |+ n, N' X5 X4 U4 _9 L; A% w6 U% e" a$ g$ F: j) \% h/ ^/ W# E
UF_MODL_ask_feat_body(blk_tag,&blk_tag);
) V" Q. ]& I5 m9 S uf_list_p_t end_list;% S; g9 J+ f+ z9 q6 e
UF_MODL_create_list(&end_list);9 x, |& e. `% S9 j% A6 w$ c# m
UF_MODL_ask_body_edges(blk_tag,&end_list);
2 ?! c% ~2 v2 I2 C$ x) z int num;" [$ ]7 D2 @5 x+ g R
UF_MODL_ask_list_count(end_list,&num);
3 s0 a( ]4 O! c" |' f
4 ?6 q1 B7 Q. m/ D3 q# t' Z char *radius ="2";! D# ^) T. X" m. t1 r
int smooth_overflow = 0;
0 _+ `8 y" z7 E int cliff_overflow = 0;5 j! c3 l! s. E9 {" _
int notch_overflow = 0;
$ w7 ~8 I9 w, v7 W double vrb_tool = 0;
+ O$ b2 y( W) C1 o$ c- ^5 N" ` tag_t feature_obj_id ;
7 |+ {+ P% R8 T4 @& O- x5 n( B0 |; _ uf_list_p_t end_list2;/ p/ `5 A& F, N1 |% B& ?. {
UF_MODL_create_list(&end_list2);; R' |3 l X% S+ Z, g
for (int i = 0; i < num ; i++)& E2 F& h$ Y& X6 p% a: a5 T0 h6 P
{- B. a' K3 J' D5 |
tag_t tt,curve1;
8 t- q1 K8 L$ J5 [ UF_MODL_ask_list_item(end_list,i,&tt);
% p; N7 H# Z7 W4 s/ Y; C UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线+ N% Y; ? C; Q& u9 m
double point1 [ 3 ] ;: s$ \1 y7 L( J) c1 p f; O. t2 x" s
double point2 [ 3 ] ;
/ I7 f0 ]1 O2 V( f, N# Z5 T# l int vertex_count;* T" @# y' t& J7 ?+ o3 [ l) \. p
UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
- Q4 H) X) j# n# O4 @2 }. j4 x' E3 d if ((point1[0]==point2[0])&(point1[1]==point2[1]))4 E& S, E9 D0 u
{2 f3 }' h7 \* c* D9 K% h6 b& v
UF_MODL_put_list_item(end_list2,tt);" m4 g8 I% L/ A! b$ D3 B
}
0 i: ~6 b( k) u+ w }
' Q( k2 C( T( Z6 D4 } UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);
+ T% z2 ?/ K9 E0 E& l UF_MODL_delete_list(&end_list);
4 [; o3 m) @7 _$ ?
0 E# }. z% u4 o% W UF_terminate();
& I* R+ q7 ?" w* f return;
$ i( g: u& c# y& d! G5 l5 [}* y. z! ], Z& a2 |( b3 S6 ~! w: F
* s! U9 D- a9 ^/ H6 zextern int ufusr_ask_unload()
( C3 e1 d5 `5 P7 U y{
" U+ A' y4 d' s, d/ _; ~* a return UF_UNLOAD_IMMEDIATELY;* f& p4 N4 Q1 w# a& a4 S) E
}, E! V& n" \1 O$ F* x k" i7 Z5 J
8 G; K/ z6 }& e9 }
|
-
评分
-
查看全部评分
|