|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
/*********************************************************/6 K9 U' q6 B: z- e" R
#include <stdio.h>
' s: w0 @/ y& i) ]3 b#include <stdlib.h>
0 Z+ ~$ _6 c7 ?% r, F: z. S1 p/ v#include <uf.h>4 C/ A8 Z; q" r R! I! A
#include <uf_attr.h>
0 v% {" r/ h1 d3 w* Z7 k#include <uf_cfi.h>
" F, D q; ~8 F8 p' l- o#include <uf_curve.h>
; k0 M1 b" o, S#include <uf_ui.h>; k$ D1 w* e' d- X
#include <uf_modl.h>% U# w3 U+ X. H4 V6 {# a
1 G" l% \6 D: Q- G
/************* unload alloc mem *************************/
! o" U# Z9 N& S; |* ^) E; q" `; h/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */$ S1 T0 |+ O M7 B" K- O& G0 x
/ x+ `/ }/ U8 ~" K* [& N0 \extern void ufusr( char *param, int *reTCod, int param_len )! R3 S* ]. d' O: f
{6 n, p. I$ U: p: U3 D
UF_initialize();# S# c* e0 \5 ?- q) g* T1 \
5 Z U4 h9 P& C6 p0 b, ?, E, R% n0 q
double coner[3]={0,0,0};
- S0 l! r$ u7 b, K* H char *edge[3] = {"10","50","20"};% [3 V( B$ K/ c7 z
tag_t blk_tag;" O: |2 U' B0 e8 s2 {1 X, {7 l# T
UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);5 u6 \$ U! H+ b0 X
- Q& N& }) {, Z% S4 A. F5 A
* a/ K1 x( n: r1 x& G6 k" _6 J2 I/ w UF_MODL_ask_feat_body(blk_tag,&blk_tag);& Q% I1 c3 y# r4 f0 U: o
uf_list_p_t end_list;* E& x" }! s4 h$ b" Y- y+ D4 I
UF_MODL_create_list(&end_list);
! j6 `$ `$ F6 h) y# @ UF_MODL_ask_body_edges(blk_tag,&end_list);
4 F: J9 `+ ]1 s! W$ t5 [3 n int num;
. I/ \7 T& U* J) B$ \2 r1 t UF_MODL_ask_list_count(end_list,&num);" ~% \5 f% U7 G3 [) K3 b7 m
8 _7 m- f- w o; f char *radius ="2";$ d- ~1 D5 `4 e& F8 G
int smooth_overflow = 0;
. |% r3 r3 n6 L- z! `: m int cliff_overflow = 0;
$ U+ X, ^$ L0 t int notch_overflow = 0;. W4 n7 O+ W. `# K; P# Q
double vrb_tool = 0;' r2 u, {- m( a
tag_t feature_obj_id ;
* T& E+ H/ v2 T0 O% c uf_list_p_t end_list2;9 a! N% o3 P. [5 Y' B
UF_MODL_create_list(&end_list2);9 C! o6 i) x2 E& j
for (int i = 0; i < num ; i++)
1 O4 G% e6 _/ W {# K1 T4 ?- Q) S) q
tag_t tt,curve1;
$ y7 ]1 a3 z* {% Y2 n/ d+ e UF_MODL_ask_list_item(end_list,i,&tt);$ B9 `- }! c' U& w
UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线% |$ H- C; g( O! z0 P& x
double point1 [ 3 ] ;6 y8 M. U! ~2 {0 T
double point2 [ 3 ] ;
2 o) L. U+ ^+ N5 F int vertex_count;
! s/ S* d+ k5 B UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
3 r6 w8 T$ [5 Q1 O3 Z4 e( B0 w if ((point1[0]==point2[0])&(point1[1]==point2[1]))
2 O: q+ ~+ R* A% j' r' |( H {
4 ?9 u, C& Y5 w, Y& J UF_MODL_put_list_item(end_list2,tt);! F3 ^8 Y5 X9 ~9 @
}
7 U- I- u* t. C+ }" B h% p+ L }+ R" R# N7 ^5 E' q$ g$ M- l. T
UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);
7 P1 ~! b }2 O6 I/ Y UF_MODL_delete_list(&end_list);4 f! R4 u7 F# a# q
& `8 f& |3 X( x0 o8 t% ] UF_terminate();* t# C! `1 ^) Z+ S' q0 G& N1 V
return;
* r# K1 S8 s* D/ z}
6 i* m" h1 F$ h2 P# v0 t* w( c% J, ~ @. N" c. g
extern int ufusr_ask_unload()! P: ]( _' X8 J# i& m
{
8 S4 L' x% Z( [- s8 T& Z- U8 H% t7 | return UF_UNLOAD_IMMEDIATELY;
0 d* `! \: e/ G}0 f8 p3 ^6 V6 V+ V
1 d# I& T9 N8 m
|
-
评分
-
查看全部评分
|