|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/*********************************************************/
' y+ q7 l; M) F, m#include <stdio.h>4 t) f7 C- p4 _1 ^ F' c, v) |
#include <stdlib.h>- a" ~2 O4 J$ E- b$ a
#include <uf.h>
' b' o; J( s! O9 D" E; [ \/ a& D#include <uf_attr.h>
; Z5 B9 J6 m' x4 c# }#include <uf_cfi.h>6 P. e% B# c# D& V8 Y
#include <uf_curve.h>1 F% ]4 I4 }; V3 L2 w7 @
#include <uf_ui.h>. i' }# L1 G. i4 A' h& Z! ^
#include <uf_modl.h>
% m K, o: O3 z u% ]
; h5 X7 N- S6 R0 y& z. G2 F# S1 x/************* unload alloc mem *************************/: k5 J* [$ v' ~
/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */
8 B7 V5 e+ s* j
. J, B3 @* g8 m3 y8 U6 ]extern void ufusr( char *param, int *reTCod, int param_len )) ]; O$ i6 k- K& v( g: p. R. X
{
- e0 G! ^6 c6 B0 ]/ P UF_initialize();0 G- Y0 c% d) |: l" [5 _6 ?$ I
$ F# v4 x$ m( Z9 n8 N- ~! B+ S+ x
5 e$ L" `) H; B, @4 S! x& | double coner[3]={0,0,0};3 i# M2 u T; W' s# ~: n
char *edge[3] = {"10","50","20"};+ H" ^: _* {$ u: \; T
tag_t blk_tag;
9 W/ g2 f& t& Z( ` UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);
9 f+ w6 P! q% p7 [7 l
% m( j+ k) v h
0 }- b0 i Z! V; w& V! V; f W- n' H UF_MODL_ask_feat_body(blk_tag,&blk_tag);, L3 L$ E) ^6 X, {# @
uf_list_p_t end_list;
/ F% J! l$ `7 t% D, K. J; h UF_MODL_create_list(&end_list);
4 z) C* s1 t3 k2 S) j UF_MODL_ask_body_edges(blk_tag,&end_list);
3 s; ]# S! r0 z! Y int num;
, M! H# l# P: d5 l) p9 m( W5 I. d/ y, x UF_MODL_ask_list_count(end_list,&num);
; M; S6 o' j1 M7 c& ]; C6 X! }6 d! y3 ^
char *radius ="2";
a* z- i8 m! j* } int smooth_overflow = 0;8 X! e' B0 z- J6 K0 ~
int cliff_overflow = 0;) ~' @; I4 ` Q' ~. }/ V9 A
int notch_overflow = 0;6 C/ I5 J# D* S* Q# |5 E0 y2 J
double vrb_tool = 0;1 Q& J r; ?/ c6 P, v+ {
tag_t feature_obj_id ;
7 N- e! K8 Z+ U; H5 T4 J+ y4 f* a uf_list_p_t end_list2;! v6 \% S8 e* E, s. G
UF_MODL_create_list(&end_list2);
; ]- S5 n# |' G4 Z/ |# D! z" F for (int i = 0; i < num ; i++)6 n" ~: m4 i& O+ U4 i+ z
{+ Y W* Q& @- D ?1 T5 X- i
tag_t tt,curve1;
% P4 w6 ?4 f! |0 M4 _: K7 P UF_MODL_ask_list_item(end_list,i,&tt);
6 t% i6 r& }# k/ |* r UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线3 L* g; F- l$ h, h
double point1 [ 3 ] ;! ~. `3 ?& R8 P% k
double point2 [ 3 ] ;
6 s e3 P7 l; j/ _. a3 K int vertex_count;/ F* j6 U5 R( l/ S! K% z/ m" ?
UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
, l9 Q% J! Y! q, V# Q3 E if ((point1[0]==point2[0])&(point1[1]==point2[1]))3 ^! t1 n% X8 g7 L# q
{: H- \& s a/ d
UF_MODL_put_list_item(end_list2,tt);
3 C' [8 E; j8 G7 y) W/ ~ }
# a% S; w- |! p6 p. D T }& \8 p( Y# h/ A& J# r3 \
UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);
7 c7 b' W1 u7 Q9 V% e" H; @ UF_MODL_delete_list(&end_list);7 }) L- S. {7 m" N3 @5 G
$ b; a. g. F5 z5 m
UF_terminate();
3 R9 A ]1 `! [. U9 d. ` return;* N4 E! Y9 f0 r
}
3 j& V: e# ?* Z: z5 L$ V6 T O& Y
Z/ t2 }# |* m- }extern int ufusr_ask_unload()
+ O+ C. ~" y2 P' d9 F{
( \/ E9 l8 j* ~/ u return UF_UNLOAD_IMMEDIATELY;$ Y6 i3 o9 B9 t9 H+ j6 G6 \
}* L' ^% v V' ~& W4 ^: y* O ^2 \
8 W; S- l7 s/ H+ h
|
-
评分
-
查看全部评分
|