|
#include <uf.h>
+ l# J% {# X* k5 }* B9 k$ [#include <uf_ui.h>! W1 k# G e, T
#include <uf_exit.h>7 L$ Z- z8 q* g
#include "uf_modl.h"! l! h6 W; I7 {- E; C1 O1 l
extern DllExport void ufusr( char *parm, int *returnCode, int rlen )
! v$ k! T' g9 T& a{
, u# W6 y; r5 v% u/ K0 g /* Initialize the API environment */
' L/ }& x# ~5 N7 p9 i3 s0 Z# @ if( UF_initialize() )
* e) [9 K q$ |2 u; s {" I# b$ V2 y) Q% `) I
/* Failed to initialize *// Z' ]- O0 J0 e: P0 f$ d) P
return;
- a. o2 i% S& l. S; h. A) O8 @% J }
$ I( p9 y8 B: c* G3 m" N UF_FEATURE_SIGN sign = UF_NULLSIGN;
: l8 B/ [& s5 d% u, Q double origin[3] = {0,0,0};
9 ~* F: ~/ H; E char* height = "5";& J& D5 s5 z! e; z, ?! P3 W5 N
char* diam = "8";, r2 Y# F/ I( P% }8 ] Y0 T
double direction[3] = {0,0,5};
% N7 z' p3 }. Y tag_t cyl1;' s. H% `: _6 q9 W6 J2 f. D- E
UF_MODL_create_cyl1(sign,origin,height,diam,direction,&cyl1);
6 c' s6 a, g$ o char* height2 = "50";
: o' |+ k( H$ p: q% g8 }1 E2 H& k char* diam2 = "4";
6 g! r0 y5 j) H$ A6 t tag_t cyl2;- \7 x0 s3 H) U- v0 n
UF_MODL_create_cyl1(sign,origin,height2,diam2,direction,&cyl2);% n" I, g e; e" D3 Q' w1 k
tag_t cyl_ent;! b) l- v& p" j; d. l R
logical retain_target_body=FALSE;1 `7 k q T3 p3 F
logical retain_tool_body=FALSE;
. [& G/ ]0 J% w+ }1 ^; i/ q& i UF_MODL_unite_bodies_with_retained_options (cyl1,cyl2,retain_target_body,retain_tool_body,&cyl_ent);
d' G9 q; F5 X /* Terminate the API environment */
3 K' i+ ~- F1 B: x7 A, s- N2 j UF_terminate();
# A7 J+ h) C% m3 T4 |- v! K9 {: ~7 d. \}
2 O- e! Y0 a3 U2 L. O* N x6 U& n4 ~% x. @
extern int ufusr_ask_unload( void )0 E5 z" P, X+ G& n
{
: B( ~6 Z5 f" A, x* D" \& ` return( UF_UNLOAD_IMMEDIATELY );
* I# Z* k3 h3 ~9 c7 w7 F/ {5 h}
( I V7 t3 f# z2 p5 m, W
8 q5 P4 t( l- X# z* W( K |
|