|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
/*********************************************************/
s' a- C! b5 X1 a#include <stdio.h>( |9 R" k0 H& [% ^6 y
#include <stdlib.h>
2 M8 r1 t, q) m/ P#include <uf.h>/ M+ ^3 C! x4 w6 E) e
#include <uf_attr.h>
3 Q2 c6 _( s9 T! h9 H#include <uf_cfi.h>2 d" D4 s9 V2 U+ H" P7 u" U
#include <uf_curve.h>" v9 O+ O# f" Z8 x& S- h
#include <uf_ui.h>
: R: @1 h" X$ W#include <uf_modl.h>
# A" M3 H, [4 A0 C6 r$ U; G) h4 N3 J+ }
/************* unload alloc mem *************************/- E2 }+ L V# b* Z9 ^0 o
/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */
! [9 v. s) e D' q
5 l9 `/ R9 |, G$ b/ eextern void ufusr( char *param, int *reTCod, int param_len )( O1 o: e7 Z; i6 Y+ P2 l1 e
{
2 F# d: }! l7 E6 b- J UF_initialize();
9 S9 f8 l6 f- i; q' p
, j$ Y6 n1 t4 I$ G* k& J0 n
7 g& U$ B1 P! z/ F2 \ double coner[3]={0,0,0};
1 K: k( W3 K% Z7 H1 X char *edge[3] = {"10","50","20"};
7 q6 u7 N4 ~- q1 I. S) Y/ u tag_t blk_tag;
5 |) J1 t* ]! O) ]' P1 S: ~1 D UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);' {, a' p4 Z5 H6 S4 r" y% c
9 ?0 a) b) S- ~& s: {% }3 @
' d$ [$ f3 ~1 l; l2 _0 b
UF_MODL_ask_feat_body(blk_tag,&blk_tag);- A: V) n2 |1 P' ~- `
uf_list_p_t end_list;( d, ~- w7 e2 x' m) D
UF_MODL_create_list(&end_list);7 `1 ?, w$ J4 e, M: Q8 t" M
UF_MODL_ask_body_edges(blk_tag,&end_list);2 F* e0 {! \- Z( T/ \- Z# A1 a
int num;) f5 p/ `3 Q, N0 p9 S0 D
UF_MODL_ask_list_count(end_list,&num);, {0 b j* R t1 B- n
* j3 t: \) l2 ^6 v
char *radius ="2";
, K) R( M }' G# r! \- R- [) N int smooth_overflow = 0;7 A2 [7 w% g! d- m% @
int cliff_overflow = 0;
6 _; @, L4 m9 \3 N int notch_overflow = 0;
4 B2 i- T6 S% M% h1 P& W' T( M8 [ double vrb_tool = 0;
1 w$ u- l) O3 Z& X/ N# a; W7 \0 D( C tag_t feature_obj_id ;
' {2 B9 ?) L$ u uf_list_p_t end_list2;1 D* S/ }" {* G$ G
UF_MODL_create_list(&end_list2); E, N7 q& H8 ?6 h6 v4 Y( D
for (int i = 0; i < num ; i++): o8 {; M0 r/ f* S- n; m" X
{7 R9 Y% }& E* n# N, ~" m
tag_t tt,curve1;8 _4 g) L0 c5 q/ [; D
UF_MODL_ask_list_item(end_list,i,&tt);
; o0 z3 Q4 ` b UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线
9 `' f4 |: `' O5 U7 e double point1 [ 3 ] ;
i+ A$ c. E* i' G double point2 [ 3 ] ;$ g( h% E+ ]7 B' E3 A" m. {
int vertex_count;
, _! }, q, z$ M& V& e UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);7 O6 x6 C/ G8 {9 w) W1 s4 N
if ((point1[0]==point2[0])&(point1[1]==point2[1]))
. e7 F! W7 c3 p/ B2 N" M {
9 e- O6 K! g) W1 d2 `& \+ Z* \ UF_MODL_put_list_item(end_list2,tt);4 m. V! H3 I0 H( `1 x
}5 b( Y& j2 D/ K$ o0 ^
}
5 [" V. z: {! s& F! l UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);
. l# T, q! J; C5 w) Y( f. X UF_MODL_delete_list(&end_list);, m _# S' l- g* P/ F) a! [8 A& t
' b& Z0 E7 F: F% g! G, Q* R3 T
UF_terminate();* w* j0 D3 ]7 w/ X& N
return;. l2 `4 u% h: C
}
: D9 ^) k' I0 y3 }7 ]" t( o8 u( v
: ?7 P% A3 W3 D3 d( W2 l7 |# I0 ^extern int ufusr_ask_unload()" b6 j( @- }0 U& [8 j, M; ]6 N
{) W7 z; J2 ^- e& C2 p; [/ C
return UF_UNLOAD_IMMEDIATELY;
9 W. Z" ~# H. ~; i$ E' K}: c6 y9 C/ [5 {4 H( o( \4 M
! e! @5 C% G4 Q |
-
评分
-
查看全部评分
|