Beruflich Dokumente
Kultur Dokumente
AutoLisp Programming
AutoLisp Programming
SWE Engineering has much experience creating AutoLisp software for extending the functionality of AutoCAD. Families of parts can be created through programming AutoCAD to automate many common CAD functions. AutoCAD can be programmed in AutoLisp, C, and VBA. Micro Wizard Software has experience in all of these programming systems. This is one sample of AutoLisp programming which shows some of the code used to create whole mechanical systems with a little interaction of the CAD operator.
www.swe-eng.com/AutoLisp.htm
1/16
7/5/13
AutoLisp Programming
Program Listing:
; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
; A u t o L i s p : ; A u t o L I S Pi sa ne x t e n s i o no f t h e L I S P p r o g r a m m i n g l a n g u a g e . T h e L I S P
www.swe-eng.com/AutoLisp.htm 2/16
7/5/13
AutoLisp Programming
; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
l a n g u a g ei su s e df o rl i s tp r o c e s s i n g ,w h i c hi sw h a t " L I S P " s t a n d s f o r . L i s t si nL I S Pa r ean u m b e ro fi t e m sp l a c e di np a r e n t h i s e s a n d s e p a r a t e d b ys p a c e s .L i s t sa r ee v a l u a t e db ya p p l y i n gaf u n c t i o n ,w h i c hi st h ef i r s t i t e mi nt h el i s t ,t ot h er e s to ft h el i s t . T h e l i s tr e t u r n st h a tv a l u e w h e ne v a l u a t e d . I t e m si nt h el i s tc a n b ef u n c t i o n s ,i n d i v i d u a ld i s c r e t e i t e m s ,o ro t h e rl i s t s . T h ei n d i v i d u a li t e m si nal i s tw h i c hc a nn o t b e b r o k e nd o w na n yf u r t h e ra r e c a l l e d " a t o m s " . V a r i a b l e sd e f i n e di n L I S P a r ea t o m s ,a n dt h ev a l u e so ft h o s ev a r i a b l e sc a nb e s e tu s i n gt h e " S E T " c o m m a n d .I m m e d i a t ev a l u e sc a no n l ya c t u a l l yb e s e t b y u s i n g t h eq u o t e f u n c t i o n , a n ds os e t t i n gt h ev a l u eo fa v a r i a b l e i s n o r m a l l yd o n e b y u s i n gt h e" S E TQ U O T E "f u n c t i o n ,u s u a l l yw r i t t e na s" S E T Q " . T h ef u n c t i o n " p r o g n "i su s e dt og r o u pt o g e t h e rs t a t e m e n t sm u c h l i k e t h e " b e g i n "a n d " e n d "k e y w o r d si nP a s c a l .T h e r ea r ef u n c t i o n sf o ra c c e s s i n ge l e m e n t so fa l i s t . " c a r "r e t u r n st h e1 s te l e m e n t ," c d r "r e t u r n st h er e s to ft h el i s t , c a d r r e t u r n st h e2 n de l e m e n t . " l i s t "c o n s t r u c t sal i s t ,a n d" c o n s "a d d s a ne l e m e n tt oal i s t . As p e c i a lt y p eo f l i s tc a l l e dad o t t e dp a i rm u s t c o n t a i n2e l e m e n t ss e p a r a t e db ya p e r i o d . T h e " a s s o c " f u n c t i o n w i l l e x t r a c tt h ed o t t e dp a i rf r o mal i s to fd o t t e dp a i r sw h e r et h ef i r s ti t e m i nt h a td o t t e dp a i rm a t c h e st h ea s s o cv a l u e . Al i s ti nA u t o C A Dc a nb ee v a l u a t e db yt y p i n g t h e l i s t a t t h e A u t o C A D C o m m a n d :p r o m p t .( c o m p l e t ew i t hp a r e n t h i s e s )F o re x a m p l e ,t y p i n g ( +22 ) i n t oa u t o C A Dw i l le v a l u a t et h el i s tb ya p p l y i n gt h ep l u sf u n c t i o nt o t h e r e s to ft h el i s ta n dr e t u r n i n gt h ev a l u e4 .I nA u t o C A D ,t h eL I S Pl a n g u a g e c a na c c e s st h eA u t o C A D d r a w i n g d a t a b a s e s t o r e d i n e a c h d r a w i n g . I n g e n e r a l ,p o i n t sa r eh a n d l e da sl i s t s o f p o i n t s s u c h a s ( 1 . 02 . 02 . 5 ) w h e r et h ep o i n ts p e c i f i e dh a sX = 1 . 0Y = 2 . 0Z = 2 . 5 .A u t o C A Dc o m m a n d sc a n b e e x e c u t e df r o mA u t o L I S Pb yu s i n gt h e " c o m m a n d " f u n c t i o n . F o r e x a m p l e , ( c o m m a n d" Z O O M "" A L L " )w i l le x e c u t et h eZ O O MA L L c o m m a n d . T h e A u t o C A D d r a w i n gd a t a b a s ei sm a d eu po fa l lt h ed r a w i n g e l e m e n t s i n a d r a w i n g . I ti sa c c e s s i b l ef r o mA u t o L I S Pu s i n gt h e" e n t g e t "a n d" s s g e t " f u n c t i o n s . E n t i t i e sa r er e t u r n e da sl i s t so fd o t t e dp a i r s . E l e m e n t s a r e m a d e u p o f e n t i t yp a r a m e t e r ss t o r e di nt h o s ed o t t e dp a i r s . T h ef o l l o w i n gp a r a m e t e rv a l u e sa r eu s e d : 0-E n t i t yT y p e( P O I N T ,L I N E ,C I R C L E ,A R C ,P O L Y L I N E ,e t c . . ) 1-B l o c kV a l u e 2-B l o c kN a m e 8-L a y e rN a m e 1 0-P o i n t1 1 1-P o i n t2 4 0-R a d i u s 4 1-Xs c a l e 4 2-Ys c a l e 5 0-A n g 1 5 1-A n g 2
; ; ; ; ; ; ;
; S T A R T ; A L L
www.swe-eng.com/AutoLisp.htm
7/5/13
AutoLisp Programming
; D O N E ; C O N T ; ; ; ; ; ;
-D o n ee d i t i n gd r a w i n g ,r u nn e x ts t e pi nt h i sp r o g r a m -S a m ea sD O N E
;;| B E E P | ;| G ot ot e x tp a g e ,c l e a rs c r e e na n db e e p | ;( d e f u nb e e p( ) ( t e x t p a g e ) ; ( w r i t e c h a r7 ) )
;;| M A K E L I S T | ;| R e t u r n sal i s to fne l e m e n t si n i t i a l i z e dt om | ;( d e f u nm a k e l i s t( nm/ij ) ( s e t qi1jn i l ) ( w h i l e( < =in ) ( p r o g n ( s e t qj( c o n smj ) ) ( s e t qi( 1 +i ) ) ) ) j )
;;| S E T L I S T | ;| R e t u r n sac o p yo fl i s tlw i t he l e m e n tn=m | ;( d e f u ns e t l i s t( lnm/ij ) ( s e t qi( 1 -( l e n g t hl ) )jn i l ) ( w h i l e( > =i0 ) ( p r o g n ( i f( =in ) ( s e t qj( c o n smj ) ) ;e l s e ( s e t qj( c o n s( n t hil )j ) ) ) ( s e t qi( 1 -i ) ) )
www.swe-eng.com/AutoLisp.htm 4/16
7/5/13
AutoLisp Programming
) j )
;;| R E F P O I N T | ;| R e t u r n sr e f e r e n c ep o i n tn a m e dp t n a m ei np t l i s t | ;( d e f u nr e f p o i n t( p t n a m e ) ( c d r( a s s o cp t n a m ep t l i s t ) ) )
;;| V I E W | ;| R e s t o r ev i e wn a m e dvo rf i n dr e f e r e n c ep tc l o s e s tt ov | ;| a n dr e s t o r et h ev i e wo ft h es a m en a m e | ;( d e f u nv i e w( v/nl n a m ep ld ) ( i f( =( t y p ev )' S T R ) ( s e t qv n a m ev ) ;e l s e ( p r o g n ( s e t qd1 0 0 0 0 0 . 0v n a m e" A L L " ) ( s e t qn0 ) ( w h i l e( n t hnp t l i s t ) ( p r o g n ( s e t ql n a m e( c a r( n t hnp t l i s t ) ) ) ( s e t qp l( c d r( n t hnp t l i s t ) ) ) ( i f( <( d i s t a n c evp l )d )( s e t qd( d i s t a n c evp l )v n a m el n a m e ) ) ( s e t qn( 1 +n ) ) ) ) ) ) ( i f( o r( =( t y p ev )' S T R )( a n d( / =v n a m ec u r r e n t v i e w )( / =c u r r e n t v i e w" A L L " ) ) ) ( p r o g n ( c o m m a n d" V I E W "" R E S T O R E "v n a m e ) ( s e t qc u r r e n t v i e wv n a m e ) ) ) )
www.swe-eng.com/AutoLisp.htm 5/16
7/5/13
AutoLisp Programming
;;| L I N E L S T | ;| R e t u r n sl i s to ft y p e" L I N E " | ;( d e f u nl i n e l s t( xyija b s m o d e ) ( i fa b s m o d e ( l i s t' ( 0." L I N E " )( l i s t1 0xy0 . 0 )( l i s t1 1ij0 . 0 ) ) ;e l s e ( l i s t' ( 0." L I N E " )( l i s t1 0xy0 . 0 )( l i s t1 1( +xi )( +yj )0 . 0 ) ) ) )
;;| S E L E C T P T | ;| R e t u r n ss e l e c t i o np tf o re n t i t ye | ;( d e f u ns e l e c t p t( e/pp 1p 2ra 1a 2 ) ( s e t qe n t( e n t g e te ) ) ( i f( =( c d r( a s s o c0e n t ) )" L W P O L Y L I N E " ) ( p r o g n ; ( s e t qe n t( e n t g e t( e n t n e x te ) ) ) ( s e t qp( c d r( a s s o c1 0e n t ) ) ) ) ) ( i f( =( c d r( a s s o c0e n t ) )" L I N E " ) ( p r o g n ( s e t qp 1( c d r( a s s o c1 0e n t ) ) ) ( s e t qp 2( c d r( a s s o c1 1e n t ) ) ) ( s e t qp( m i d p tp 1p 2 ) ) ) ) ( i f( =( c d r( a s s o c0e n t ) )" C I R C L E " ) ( p r o g n ( s e t qp 1( c d r( a s s o c1 0e n t ) )r( c d r( a s s o c4 0e n t ) ) ) ( s e t qp( m i d a r cp 1r0 . 0P I ) ) ) ) ( i f( =( c d r( a s s o c0e n t ) )" A R C " ) ( p r o g n ( s e t qp 1( c d r( a s s o c1 0e n t ) )r( c d r( a s s o c4 0e n t ) ) ) ( s e t qa 1( c d r( a s s o c5 0e n t ) )a 2( c d r( a s s o c5 1e n t ) ) ) ( s e t qp( m i d a r cp 1ra 1a 2 ) ) ) ) p )
www.swe-eng.com/AutoLisp.htm
6/16
7/5/13
AutoLisp Programming
( d e f u nb o x( n a m e/s sne n ta t t rs px 1y 1x 2y 2 ) ( s e t qs s( s s g e t" X "' ( ( 0." I N S E R T " )( 2." B O X " ) ) ) ) ( s e t qn0 ) ( w h i l e( <n( s s l e n g t hs s ) ) ( p r o g n ( s e t qe n( s s n a m es sn )e n t( e n t g e te n ) ) ( s e t qa t t r( e n t g e t( e n t n e x te n ) ) ) ( i f( =( c d r( a s s o c1a t t r ) )n a m e ) ( p r o g n ( s e t qs p( c d r( a s s o c1 0e n t ) ) ) ( s e t qx 1( c a rs p ) ) ( s e t qy 1( c a d rs p ) ) ( s e t qx 2( +x 1( c d r( a s s o c4 1e n t ) ) ) ) ( s e t qy 2( +y 1( c d r( a s s o c4 2e n t ) ) ) ) ( s e t qn( s s l e n g t hs s ) ) ) ) ( s e t qn( 1 +n ) ) ) ) ( l i s ts p( l i s tx 2y 2 ) ) )
;X , Yi n s e r t
;Xs c a l e ;Ys c a l e
;;| M I D P T | ;| R e t u r n sm i d p o i n to fl i n es e g m e n t | ;( d e f u nm i d p t( p 1p 2/x 1y 1x 2y 2 ) ( s e t qx 1( c a rp 1 )y 1( c a d rp 1 )x 2( c a rp 2 )y 2( c a d rp 2 ) ) ( l i s t( /( +x 1x 2 )2 )( /( +y 1y 2 )2 ) ) )
'A l w a y sC C W
7/5/13
AutoLisp Programming
'A l w a y sC C W
;;| I N T P T | ;| F i n di n to fl i n ea n dl i n e / c i r c l e / a r c | ;| ( r e t u r n sc l o s e s tt os t a r tp to fl i n ei f2e x i s t ) | ;( d e f u ni n t p t( l ne n t /t y pp t 1p t 2p t |p t 4x p t 1x p t 2c e nr a ds l o p ea 1a 2o k 1o k 2 p i vd i s t 1d i s t 2l e n 1l e n 2a n g 1 aa n g 1 bl e n _ ao p pd i s t ) ( s e t qx p tn i l ) ( s e t qp t 1( c d r( a s s o c1 0l n ) )p t 2( c d r( a s s o c1 1l n ) ) ) ( s e t qt y p( c d r( a s s o c0e n t ) ) ) ( i f( =t y p" L I N E " ) ( p r o g n ( s e t qp t 1( c d r( a s s o c1 0e n t ) )p t 4( c d r( a s s o c1 1e n t ) ) ) ( s e t qx p t( i n t e r sp t 1p t 2p t 1p t 4 ) ) ) ) ( i f( o r( =t y p" C I R C L E " )( =t y p" A R C " ) ) ( p r o g n ( s e t qc e n( c d r( a s s o c1 0e n t ) )r a d( c d r( a s s o c4 0e n t ) ) ) ( i f( =t y p" A R C " ) ( s e t qa 1( c d r( a s s o c5 0e n t ) )a 2( c d r( a s s o c5 1e n t ) ) ) ( s e t qa 10a 2( *P I2 ) ) ) ( s e t qd i s t 1( d i s t a n c ep t 2c e n )d i s t 2( d i s t a n c ep t 1c e n ) ) ( i f( >d i s t 1d i s t 2 ) ( p r o g n ( s e t qa n g 1 a( a b s( -( a n g l ep t 1p t 2 )( a n g l ec e np t 2 ) ) ) ) ( s e t qs l o p e( a n g l ep t 2p t 1 ) ) ( s e t qd i s td i s t 1 ) ( s e t qp i vp t 2 ) ) ( p r o g n ( s e t qa n g 1 a( a b s( -( a n g l ep t 2p t 1 )( a n g l ec e np t 1 ) ) ) ) ( s e t qs l o p e( a n g l ep t 1p t 2 ) ) ( s e t qd i s td i s t 2 ) ( s e t qp i vp t 1 ) )
www.swe-eng.com/AutoLisp.htm 8/16
7/5/13
AutoLisp Programming
;;| M E A S U R E | ;| F i n d st h eM i n / M a xo fal a y e r | ;| ( E x p l o d i n gL W P O L Y L I N E Si ff o u n d ) |
www.swe-eng.com/AutoLisp.htm 9/16
7/5/13
AutoLisp Programming
;( d e f u nm e a s u r e( l a y e r/s sne ne n tpra 1a 2 ) ( s e t qm i n x1 0 0 0 0 0 . 0m a x x1 0 0 0 0 0 . 0m i n y1 0 0 0 0 0 . 0m a x y1 0 0 0 0 0 . 0 ) ( s e t qs s( s s g e t" X "( l i s t( c o n s8 l a y e r ) ) ) ) ( s e t qn0 ) ( w h i l e( <n( s s l e n g t hs s ) ) ( p r o g n ( s e t qe n( s s n a m es sn )e n t( e n t g e te n ) ) ( i f( =( c d r( a s s o c0e n t ) )" L W P O L Y L I N E " )( c o m m a n d" E X P L O D E "e n ) ) ( s e t qn( 1 +n ) ) ) ) ( s e t qs s( s s g e t" X "( l i s t( c o n s8 l a y e r ) ) ) ) ( s e t qn0 ) ( i fs s ( w h i l e( <n( s s l e n g t hs s ) ) ( p r o g n ( s e t qe n( s s n a m es sn )e n t( e n t g e te n ) ) ( i f( =( c d r( a s s o c0e n t ) )" L I N E " ) ( p r o g n ( m i n m a x( c d r( a s s o c1 0e n t ) ) ) ( m i n m a x( c d r( a s s o c1 1e n t ) ) ) ) ) ( i f( =( c d r( a s s o c0e n t ) )" A R C " ) ( p r o g n ( s e t qp( c d r( a s s o c1 0e n t ) )r( c d r( a s s o c4 0e n t ) ) ) ( s e t qa 1( c d r( a s s o c5 0e n t ) )a 2( c d r( a s s o c5 1e n t ) ) ) ( i f( <a 2a 1 )( s e t qa 2( +a 2( *P I2 ) ) ) ) ( s e t qa0 ) ( w h i l e( < =aa 2 ) ( p r o g n ( i f( a n d( > =aa 1 )( < =aa 2 ) ) ( m i n m a x( p o l a rpar ) ) ) ( s e t qa( +a( /P I2 ) ) ) ) ) ( m i n m a x( p o l a rpa 1r ) ) ( m i n m a x( p o l a rpa 2r ) ) ) ) ( i f( =( c d r( a s s o c0e n t ) )" C I R C L E " ) ( p r o g n ( s e t qp( c d r( a s s o c1 0e n t ) )r( c d r( a s s o c4 0e n t ) ) ) ( m i n m a x( p o l a rp0 . 0r ) ) ( m i n m a x( p o l a rp( /P I2 )r ) ) ( m i n m a x( p o l a rpP Ir ) ) ( m i n m a x( p o l a rp( *P I1 . 5 )r ) ) ) ) ( s e t qn( 1 +n ) ) ) ) ) )
www.swe-eng.com/AutoLisp.htm
10/16
7/5/13
AutoLisp Programming
;;| P I C K P T | ;| F i n dp ti n t e r s e c t i n gw i t hl i n ea n de n t i t i e so nl a y e r | ;( d e f u np i c k p t( l nl a y e r/s sne n tp i c k pp ) ( s e t qs s( s s g e t" X "( l i s t( c o n s8l a y e r ) ) ) ) ( s e t qn0p i c k pn i l ) ( i fs s ( w h i l e( <n( s s l e n g t hs s ) ) ( p r o g n ( s e t qe n t( e n t g e t( s s n a m es sn ) ) ) ( s e t qp( i n t p tl ne n t ) ) ( i fp ( p r o g n ( s e t qp i c k pp ) ( s e t qn( s s l e n g t hs s ) ) ) ) ( s e t qn( 1 +n ) ) ) ) ) p i c k p )
;;| P O L Y L I N E | ;| C r e a t e sap o l y l i n ef r o me n t i t i e so nl a y e rs t a r t i n ga tp t | ;; ( d e f u np o l y l i n e( l a y e r/l n 1l n 2p 1p 2s sne ne n t ) ( d e f u np o l y l i n e( l a y e r ) ( m e a s u r el a y e r ) ( s e t ql n 1( l i n e l s t( /( +m i n xm a x x )2 . 0 )( /( +m i n ym a x y )2 . 0 )01 0 0n i l ) ) ( s e t ql n 2( l i n e l s t( -( /( +m i n xm a x x )2 . 0 )0 . 0 0 1 )( /( +m i n ym a x y )2 . 0 )01 0 0n i l ) ) ( s e t qs s( s s g e t" X "( l i s t( c o n s8l a y e r ) ) ) ) ( c o m m a n d" C H P R O P "s s" "" L T "" C O N T I N U O U S "" " ) ( s e t qn0p 1n i lp 2n i l ) ( w h i l e( <n( s s l e n g t hs s ) ) ( p r o g n ( s e t qe n( s s n a m es sn )e n t( e n t g e te n ) ) ( s e t qp( i n t p tl n 1e n t ) ) ( i fp( s e t qp 1pe 1e n ) ) ( s e t qp( i n t p tl n 2e n t ) ) ( i fp( s e t qp 2pe 2e n ) ) ( s e t qn( 1 +n ) ) ) ) ( i f( =e 1e 2 )( c o m m a n d" B R E A K "p 1p 2 ) ) ;B r e a kl i n et h r o u g hs t a r tp t ( s e t qs s( s s g e t" X "( l i s t( c o n s8l a y e r ) ) ) ) ;G e ta l le n t i t i e so nl a y e r ( i f( / =e 1e 2 ) ;M a k ei n t oo n eP o l y l i n e ( p r o g n ( s s d e le 2s s ) ( l i n ep 1p 2 ) ( s e t qe n( e n t l a s t ) )
www.swe-eng.com/AutoLisp.htm 11/16
7/5/13
AutoLisp Programming
( c o m m a n d" P E D I T "e 1" Y "" J "s s" J "e 2e n" "" X " ) ) ;e l s e ( c o m m a n d" P E D I T "e 1" Y "" J "s s" "" X " ) ) ( e n t l a s t ) )
7/5/13
AutoLisp Programming
;;| R C T | ;| D r a war e c t a n g u l a rp o l y l i n ew /r a d i u s | ;( d e f u nr c t( xywhr ) ( v i e w( t r a n s( l i s txy )10 ) ) ( c o m m a n d" P L I N E "( l i s t( -x( /w2 . 0 ) )( -y( /h2 . 0 ) ) ) ) ( c o m m a n d( l i s t( +x( /w2 . 0 ) )( -y( /h2 . 0 ) ) ) ) ( c o m m a n d( l i s t( +x( /w2 . 0 ) )( +y( /h2 . 0 ) ) ) ) ( c o m m a n d( l i s t( -x( /w2 . 0 ) )( +y( /h2 . 0 ) ) ) ) ( c o m m a n d" C " ) ( i f( >r0 ) ( p r o g n ( c o m m a n d" F I L L E T "" R A D I U S "r ) ( c o m m a n d" F I L L E T "" P "( e n t l a s t ) ) ) ) )
;;| I N S | ;| I n s e r tab l o c ka tp tpn a m e d" n a m e "x 1 , y 1 , a 0 | ;( d e f u ni n s( n a m ep ) ( c o m m a n d" I N S E R T "n a m ep" "" "" " ) )
7/5/13
AutoLisp Programming
;;| A R R A Y | ;| A r r a y se n t i t ya tp 1r o w s ,c o l sa td i s tx , y | ;( d e f u na r r a y( p 1c o l sr o w sxy ) ( i f( a n d( / =( t y p ep 1 )' S T R )( / =( t y p ep 1 )' E N A M E )( / =( t y p ep 1 )' P I C K S E T ) ) ( v i e wp 1 ) ) ( i f( >r o w s1 ) ( i f( >c o l s1 ) ( c o m m a n d" A R R A Y "p 1" "" R "( i t o ar o w s )( i t o ac o l s )( r t o sy )( r t o sx ) ) ;e l s e ( c o m m a n d" A R R A Y "p 1" "" R "( i t o ar o w s )( i t o ac o l s )( r t o sy ) ) ) ( i f( >c o l s1 ) ( c o m m a n d" A R R A Y "p 1" "" R "( i t o ar o w s )( i t o ac o l s )( r t o sx ) ) ) ) )
;;| S T R E T C H | ;| F i n db l o c kn a m e d" n a m e "a n ds t r e t c hac r o s s i n gw i n d o w | ;| d e f i n e db yt h a tb o xxa n dyd i s t a n c e | ;( d e f u ns t r e t c h( n a m exy/b xx my mp 1p 2 ) ( s e t qb x( b o xn a m e ) ) ( s e t qx m( r t o sx )y m( r t o sy ) ) ( s e t qp 1( c a rb x )p 2( c a d rb x ) ) ( v i e w( l i s t( /( +( c a rp 1 )( c a rp 2 ) )2 )( /( +( c a d rp 1 )( c a d rp 2 ) )2 ) ) ) ( c o m m a n d" S T R E T C H "" C "p 1p 2" "" 0 , 0 "( s t r c a tx m" , "y m ) ) )
7/5/13
AutoLisp Programming
;;| C : S T A R T | ;| G ot o" S T A R T "v i e wa n dU C S | ;( d e f u nC : S T A R T( ) ( v i e w" S T A R T " ) ( c o m m a n d" U C S "" W "" U C S "" O "s t a r t p t ) ( p r i n c ) )
This is just an example of the kind of solution we provide. If you're looking for this type of application, or you need a custom CAD application to solve a specific problem, then contact us at info@swe-eng.com We'll be glad to help.
www.swe-eng.com/AutoLisp.htm
15/16
7/5/13
AutoLisp Programming
[ Back ] Send mail to webmaster@swe-eng.com with questions or comments about this web site. Please read our Usage Rules before using any information from this site. Copyright 2000 SWE Engineering Last modified: June 10, 2002
www.swe-eng.com/AutoLisp.htm
16/16