|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/*********************************************************/+ z* Z' x. E4 h; ~3 K
#include <stdio.h>
2 {4 `9 j3 R# Z9 G; i8 _+ |#include <stdlib.h>1 n/ \' q( B+ f' x
#include <uf.h>
3 H% t0 \% T% {) d#include <uf_attr.h>
& |1 x& h3 Z, c2 H#include <uf_cfi.h>8 |0 N! @4 x2 Q8 c9 ]2 F
#include <uf_curve.h>8 o( I' S/ T, ` D
#include <uf_ui.h>
. S# q# L' R# T) n#include <uf_modl.h>
8 }% ]% r6 n$ G8 X( S9 Y* |1 X% ^$ V* ~$ @" k
/************* unload alloc mem *************************/- i9 O2 E3 I- O$ t u3 [) Z
/* UF_UNLOAD_SEL_DIALOG _UG_TERMINATE _IMMEDIATELY */
! b) I2 M: l9 n& b5 R1 \, l& |( Y4 P8 G
extern void ufusr( char *param, int *reTCod, int param_len )2 S( p/ {* ^ S
{
$ q# `- g& H) |( P x UF_initialize();
; Z6 N/ }$ T0 W9 f* E1 u1 F0 U7 O$ ]. f3 U; ?4 E! v9 I1 w
/ P# F- ]7 u" h/ z. N7 _: m double coner[3]={0,0,0};
& |- R$ o+ `, Y& T6 U% t5 W/ H char *edge[3] = {"10","50","20"};
0 F6 c8 F4 i+ m% B tag_t blk_tag;
0 x' B# ^& ^8 o! n8 t: k UF_MODL_create_block1(UF_NULLSIGN,coner,edge,&blk_tag);
, c% X O$ ^1 h$ P9 E2 @
4 v/ P0 l/ Z+ y5 {2 [1 v2 Q- b
G8 L, g( R+ K8 H UF_MODL_ask_feat_body(blk_tag,&blk_tag);+ n4 v/ b7 E9 `& v8 y: ?9 g' x
uf_list_p_t end_list;
: c S. B- t9 W( d UF_MODL_create_list(&end_list);6 W& Y2 ?4 y% Z8 @# j0 U( T
UF_MODL_ask_body_edges(blk_tag,&end_list);
5 ~$ H! ]) Y& I int num;
+ V7 n! [) u( x" q/ P8 J UF_MODL_ask_list_count(end_list,&num);, ~/ H( D) X6 I$ u0 ~% Z. C, d
! P* L" i. Z* F( R, V# r char *radius ="2";
3 l' N% P# s6 m1 U2 B8 t5 d7 `6 V int smooth_overflow = 0;8 b! {+ B$ W. q7 B0 S `& y1 t8 H
int cliff_overflow = 0;
. E; K J% @! m5 K! D( ~1 D int notch_overflow = 0;( A3 R6 J5 H% c' B! A
double vrb_tool = 0;
; Y9 m2 n% Z) B# w* |' { tag_t feature_obj_id ;1 \4 s, }: [0 I- b
uf_list_p_t end_list2;) j) N! t8 j- ]% O# \
UF_MODL_create_list(&end_list2);: s. |$ r3 L* Y0 g7 n/ R# j: Q2 z
for (int i = 0; i < num ; i++)- O2 f& e0 C" w* N" {+ T) i4 U, w
{2 i0 g% T% p7 l/ |6 p+ @
tag_t tt,curve1;. i4 Z5 W5 G$ n$ C4 Q
UF_MODL_ask_list_item(end_list,i,&tt);
1 R7 {# K/ _; l3 g2 b3 z UF_MODL_create_curve_from_edge(tt,&curve1); //抽取曲线
' r5 `8 `9 d2 D: [% t4 w double point1 [ 3 ] ;
" t7 e' Q4 G$ T' _! k" x. I4 J double point2 [ 3 ] ;
' h/ p) w1 V" x1 k8 O int vertex_count;+ u( i' Y$ D1 ?% `* k. u3 T
UF_MODL_ask_edge_verts(tt,point1,point2,&vertex_count);
3 q4 u4 R' b6 V/ f L9 t if ((point1[0]==point2[0])&(point1[1]==point2[1]))
9 [" r" N: _. x* F {
( V, G$ r: {5 H# k! q2 @ UF_MODL_put_list_item(end_list2,tt);
* r% V/ Z9 x& g: O5 c& h }
8 S7 K$ f" Y* e9 w' ~ }
, o% z2 k+ @ D* |& O0 z" U UF_MODL_create_blend(radius,end_list2,smooth_overflow,cliff_overflow,notch_overflow,vrb_tool,&feature_obj_id);
/ p4 {: \ T" t- @( q# j3 C UF_MODL_delete_list(&end_list);
. e( T& U1 I0 n7 Q% F8 w0 d$ ^" P
1 d, P# c( G. l UF_terminate();
$ i4 \* p, d3 u return;
6 v2 g4 |2 V* \}
2 g9 y) N2 n& o/ O! X% s
- }- i6 K! O3 O5 I4 S: ], G1 Bextern int ufusr_ask_unload()0 F: a0 k( g4 J3 n5 v A- b- {
{, H% f( ^: q" o) b
return UF_UNLOAD_IMMEDIATELY;
+ N- ?' |: z9 B5 `1 w4 b; D}
/ d& s) G: i [4 l5 _- |% ~$ J1 Q5 m+ F+ \3 ?$ A- ^
|
-
评分
-
查看全部评分
|