29.08.2018 10:41    

Myalem
Arkadaşlar selamlar; Bu konu ile ilgili bir çok lisp var ama ben genede kendi yaptığım lispi paylaşmak istiyorum. İster ekrandan isterseniz el ile ölçüleri vererek açınım yapar. Sadece çizgi tipinizin CENTER2 açık olmasına dikkat edilmeli.

( defun aci ( ab )
( / ( * pi ab ) 180.0 )
)
( defun derece ( bc )
( / ( * 180.0 bc ) pi )
)
;;***********************************************************************************
;;############################ ################################
;;&&&&&&&&&&&&&&&&&&&&&&&&&&&& ACINIMT &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
;;############################ ################################
;;***********************************************************************************
( defun c:acinimt ( / hal1 hal2 )
;;....................................................................................
;;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
;;& Koni ve Daire açınımını yapmayı sağlar. &
;;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
;;....................................................................................
( initget 3 "E G" )
( setq hal1 ( getkword "\nAcinim yapmak için verileri elle girecekseniz.."E" Kenar seçerek girecekseniz.."G" Seçeneklerinden birini giriniz...? " ) )
( if ( = "E" ( strcase hal1 ) ) ( progn
( initget 3 "E D S" )
( setq hal2 ( getkword "\nÖlçüler Eksenden ise.."E" Ölçüler Dıştan ise.."D" Ölçüler içten ise.."S" Seçeneklerinden birini giriniz....? " ) )
( if ( = "E" ( strcase hal2 ) ) ( eeksenac ) )
( if ( = "D" ( strcase hal2 ) ) ( edisac ) )
( if ( = "S" ( strcase hal2 ) ) ( eicac ) ) ) )
( if ( = "G" ( strcase hal1 ) ) ( progn
( initget 3 "E D S" )
( setq hal2 ( getkword "\nÖlçüler Eksenden ise.."E" Ölçüler Dıştan ise.."D" Ölçüler içten ise.."S" Seçeneklerinden birini giriniz....? " ) )
( if ( = "E" ( strcase hal2 ) ) ( geksenac ) )
( if ( = "D" ( strcase hal2 ) ) ( gdisac ) )
( if ( = "S" ( strcase hal2 ) ) ( gicac ) ) ) )
)
;;*****************************************************************************************
( defun geksenac ( / konidurum ob1 ob2 op1 op2 op3 op4 ag1 ag2 ag3 mn1 yol uz1 uz2 dr1 dr2 )
( setq ob1 ( entsel ( strcat "\nAçınım için Birinci Eğimli Eksen Yan Kenarını Seçiniz...? " ) )
ob2 ( entsel ( strcat "\nAçınım için İkinci Eğimli Eksen Yan Kenarını Seçiniz...? " ) ) )
( setq op1 ( cdr ( assoc 10 ( entget ( car ob1 ) ) ) )
op2 ( cdr ( assoc 11 ( entget ( car ob1 ) ) ) )
op3 ( cdr ( assoc 10 ( entget ( car ob2 ) ) ) )
op4 ( cdr ( assoc 11 ( entget ( car ob2 ) ) ) ) )
( setq ag1 ( angle op1 op2 )
ag2 ( angle op3 op4 )
ag3 ( angle op4 op3 ) )
( if ( or ( = ag1 ag2 ) ( = ag1 ag3 ) ) ( setq konidurum "KARE" ) ( setq konidurum "KONI" ) )
;;( if ( = nil ( inters op1 op2 op3 op4 ) ) ( setq konidurum "KONI" ) ( setq konidurum "KARE" ) )
( if ( = konidurum "KONI" ) ( progn
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( if ( = nil ( inters op1 op3 op2 op4 ) ) ( progn
( if ( > ( abs ( distance op1 op3 ) ) ( abs ( distance op2 op4 ) ) ) ( setq yol 1 ) )
( if ( < ( abs ( distance op1 op3 ) ) ( abs ( distance op2 op4 ) ) ) ( setq yol 4 ) ) ) )
( if ( = nil ( inters op1 op4 op2 op3 ) ) ( progn
( if ( > ( abs ( distance op1 op4 ) ) ( abs ( distance op2 op3 ) ) ) ( setq yol 2 ) )
( if ( < ( abs ( distance op1 op4 ) ) ( abs ( distance op2 op3 ) ) ) ( setq yol 3 ) ) ) )
;;-------------------------------------------------------------------
( if ( = yol 1 ) ( setq uz1 ( abs ( distance mn1 op2 ) ) uz2 ( abs ( distance mn1 op1 ) ) dr1 ( abs ( distance op2 op4 ) ) dr2 ( abs ( distance op1 op3 ) ) ) )
( if ( = yol 2 ) ( setq uz1 ( abs ( distance mn1 op2 ) ) uz2 ( abs ( distance mn1 op1 ) ) dr1 ( abs ( distance op2 op3 ) ) dr2 ( abs ( distance op1 op4 ) ) ) )
( if ( = yol 3 ) ( setq uz1 ( abs ( distance mn1 op1 ) ) uz2 ( abs ( distance mn1 op2 ) ) dr1 ( abs ( distance op1 op4 ) ) dr2 ( abs ( distance op2 op3 ) ) ) )
( if ( = yol 4 ) ( setq uz1 ( abs ( distance mn1 op1 ) ) uz2 ( abs ( distance mn1 op2 ) ) dr1 ( abs ( distance op1 op3 ) ) dr2 ( abs ( distance op2 op4 ) ) ) )
( konac uz1 uz2 dr1 dr2 ) ) )
( if ( = konidurum "KARE" ) ( progn
( if ( = nil ( inters op1 op3 op2 op4 ) ) ( setq uz1 ( abs ( distance op1 op2 ) ) dr1 ( abs ( distance op1 op3 ) ) ) )
( if ( = nil ( inters op1 op4 op2 op3 ) ) ( setq uz1 ( abs ( distance op1 op2 ) ) dr1 ( abs ( distance op1 op4 ) ) ) )
( kareac uz1 dr1 ) ) )
)
;;*****************************************************************************************
( defun gicac ( / konidurum ob1 ob2 sck op1 op2 op3 op4 ag1 ag2 ag3 yp1 yp2 yp3 yp4 yn1 mn1 yol uz1 uz2 dr1 dr2 )
( setq ob1 ( entsel ( strcat "\nAçınım için Birinci Eğimli İç Yan Kenarını Seçiniz...? " ) )
ob2 ( entsel ( strcat "\nAçınım için İkinci Eğimli İç Yan Kenarını Seçiniz...? " ) )
sck ( getreal "\nSaç kalınlığını giriniz...? " ) )
( setq yp1 ( cdr ( assoc 10 ( entget ( car ob1 ) ) ) )
yp2 ( cdr ( assoc 11 ( entget ( car ob1 ) ) ) )
yp3 ( cdr ( assoc 10 ( entget ( car ob2 ) ) ) )
yp4 ( cdr ( assoc 11 ( entget ( car ob2 ) ) ) ) )
( setq ag1 ( angle yp1 yp2 )
ag2 ( angle yp3 yp4 )
ag3 ( angle yp4 yp3 ) )
( if ( or ( = ag1 ag2 ) ( = ag1 ag3 ) ) ( setq konidurum "KARE" ) ( setq konidurum "KONI" ) )
;;( if ( = nil ( inters op1 op2 op3 op4 ) ) ( setq konidurum "KONI" ) ( setq konidurum "KARE" ) )
( if ( = konidurum "KONI" ) ( progn
( setq yn1 ( inters yp1 yp2 yp3 yp4 nil ) )
( if ( = nil ( inters yp1 yp3 yp2 yp4 ) ) ( progn
( if ( > ( abs ( distance yp1 yp3 ) ) ( abs ( distance yp2 yp4 ) ) ) ( setq yol 1 ) )
( if ( < ( abs ( distance yp1 yp3 ) ) ( abs ( distance yp2 yp4 ) ) ) ( setq yol 4 ) ) ) )
( if ( = nil ( inters yp1 yp4 yp2 yp3 ) ) ( progn
( if ( > ( abs ( distance yp1 yp4 ) ) ( abs ( distance yp2 yp3 ) ) ) ( setq yol 2 ) )
( if ( < ( abs ( distance yp1 yp4 ) ) ( abs ( distance yp2 yp3 ) ) ) ( setq yol 3 ) ) ) )
( if ( = yol 1 ) ( progn
( setq op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( < ( abs ( distance op1 op3 ) ) ( abs ( distance yp1 yp3 ) ) ) ( progn
( setq op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op2 ) ) uz2 ( abs ( distance mn1 op1 ) ) dr1 ( abs ( distance op2 op4 ) ) dr2 ( abs ( distance op1 op3 ) ) ) ) )
( if ( = yol 2 ) ( progn
( setq op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( < ( abs ( distance op1 op4 ) ) ( abs ( distance yp1 yp4 ) ) ) ( progn
( setq op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op2 ) ) uz2 ( abs ( distance mn1 op1 ) ) dr1 ( abs ( distance op2 op3 ) ) dr2 ( abs ( distance op1 op4 ) ) ) ) )
( if ( = yol 3 ) ( progn
( setq op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( < ( abs ( distance op1 op4 ) ) ( abs ( distance yp1 yp4 ) ) ) ( progn
( setq op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op1 ) ) uz2 ( abs ( distance mn1 op2 ) ) dr1 ( abs ( distance op1 op4 ) ) dr2 ( abs ( distance op2 op3 ) ) ) ) )
( if ( = yol 4 ) ( progn
( setq op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( < ( abs ( distance op1 op3 ) ) ( abs ( distance yp1 yp3 ) ) ) ( progn
( setq op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op1 ) ) uz2 ( abs ( distance mn1 op2 ) ) dr1 ( abs ( distance op1 op3 ) ) dr2 ( abs ( distance op2 op4 ) ) ) ) )
( konac uz1 uz2 dr1 dr2 ) ) )
( if ( = konidurum "KARE" ) ( progn
( if ( = nil ( inters yp1 yp3 yp2 yp4 ) ) ( setq uz1 ( abs ( distance op1 op2 ) ) dr1 ( + ( abs ( distance op1 op3 ) ) sck ) ) )
( if ( = nil ( inters yp1 yp4 yp2 yp3 ) ) ( setq uz1 ( abs ( distance op1 op2 ) ) dr1 ( + ( abs ( distance op1 op4 ) ) sck ) ) )
( kareac uz1 dr1 ) ) )
)
;;****************************************************************************************************************
( defun gdisac ( / konidurum ob1 ob2 sck op1 op2 op3 op4 ag1 ag2 ag3 yp1 yp2 yp3 yp4 yn1 mn1 yol uz1 uz2 dr1 dr2 )
( setq ob1 ( entsel ( strcat "\nAçınım için Birinci Eğimli Dış Yan Kenarını Seçiniz...? " ) )
ob2 ( entsel ( strcat "\nAçınım için İkinci Eğimli Dış Yan Kenarını Seçiniz...? " ) )
sck ( getreal "\nSaç kalınlığını giriniz...? " ) )
( setq yp1 ( cdr ( assoc 10 ( entget ( car ob1 ) ) ) )
yp2 ( cdr ( assoc 11 ( entget ( car ob1 ) ) ) )
yp3 ( cdr ( assoc 10 ( entget ( car ob2 ) ) ) )
yp4 ( cdr ( assoc 11 ( entget ( car ob2 ) ) ) ) )
( setq ag1 ( angle yp1 yp2 )
ag2 ( angle yp3 yp4 )
ag3 ( angle yp4 yp3 ) )
( if ( or ( = ag1 ag2 ) ( = ag1 ag3 ) ) ( setq konidurum "KARE" ) ( setq konidurum "KONI" ) )
;;( if ( = nil ( inters op1 op2 op3 op4 ) ) ( setq konidurum "KONI" ) ( setq konidurum "KARE" ) )
( if ( = konidurum "KONI" ) ( progn
( setq yn1 ( inters yp1 yp2 yp3 yp4 nil ) )
( if ( = nil ( inters yp1 yp3 yp2 yp4 ) ) ( progn
( if ( > ( abs ( distance yp1 yp3 ) ) ( abs ( distance yp2 yp4 ) ) ) ( setq yol 1 ) )
( if ( < ( abs ( distance yp1 yp3 ) ) ( abs ( distance yp2 yp4 ) ) ) ( setq yol 4 ) ) ) )
( if ( = nil ( inters yp1 yp4 yp2 yp3 ) ) ( progn
( if ( > ( abs ( distance yp1 yp4 ) ) ( abs ( distance yp2 yp3 ) ) ) ( setq yol 2 ) )
( if ( < ( abs ( distance yp1 yp4 ) ) ( abs ( distance yp2 yp3 ) ) ) ( setq yol 3 ) ) ) )
( if ( = yol 1 ) ( progn
( setq op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( > ( abs ( distance op1 op3 ) ) ( abs ( distance yp1 yp3 ) ) ) ( progn
( setq op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op2 ) ) uz2 ( abs ( distance mn1 op1 ) ) dr1 ( abs ( distance op2 op4 ) ) dr2 ( abs ( distance op1 op3 ) ) ) ) )
( if ( = yol 2 ) ( progn
( setq op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( > ( abs ( distance op1 op4 ) ) ( abs ( distance yp1 yp4 ) ) ) ( progn
( setq op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op2 ) ) uz2 ( abs ( distance mn1 op1 ) ) dr1 ( abs ( distance op2 op3 ) ) dr2 ( abs ( distance op1 op4 ) ) ) ) )
( if ( = yol 3 ) ( progn
( setq op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( > ( abs ( distance op1 op4 ) ) ( abs ( distance yp1 yp4 ) ) ) ( progn
( setq op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op1 ) ) uz2 ( abs ( distance mn1 op2 ) ) dr1 ( abs ( distance op1 op4 ) ) dr2 ( abs ( distance op2 op3 ) ) ) ) )
( if ( = yol 4 ) ( progn
( setq op1 ( polar yp1 ( - ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( - ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( + ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( + ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) )
( if ( > ( abs ( distance op1 op3 ) ) ( abs ( distance yp1 yp3 ) ) ) ( progn
( setq op1 ( polar yp1 ( + ( angle yn1 yp1 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op2 ( polar yp2 ( + ( angle yn1 yp2 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op4 ( polar yp4 ( - ( angle yn1 yp4 ) ( aci 90.0 ) ) ( / sck 2.0 ) )
op3 ( polar yp3 ( - ( angle yn1 yp3 ) ( aci 90.0 ) ) ( / sck 2.0 ) ) ) ) )
( setq mn1 ( inters op1 op2 op3 op4 nil ) )
( setq uz1 ( abs ( distance mn1 op1 ) ) uz2 ( abs ( distance mn1 op2 ) ) dr1 ( abs ( distance op1 op3 ) ) dr2 ( abs ( distance op2 op4 ) ) ) ) )
( konac uz1 uz2 dr1 dr2 ) ) )
( if ( = konidurum "KARE" ) ( progn
( if ( = nil ( inters yp1 yp3 yp2 yp4 ) ) ( setq uz1 ( abs ( distance op1 op2 ) ) dr1 ( - ( abs ( distance op1 op3 ) ) sck ) ) )
( if ( = nil ( inters yp1 yp4 yp2 yp3 ) ) ( setq uz1 ( abs ( distance op1 op2 ) ) dr1 ( - ( abs ( distance op1 op4 ) ) sck ) ) )
( kareac uz1 dr1 ) ) )
)
;;**********************************************************************
( Defun eeksenac ( / dr2y dr1y dr2 dr1 konidurum kuz5 kuz3 uz2 uz3 uz1 )
( setq dr2y ( getreal "\nAçınım için Eksen Büyük Çapını giriniz...Duz ise Boş geçiniz...? " ) )
( if ( = nil dr2y ) ( setq dr1 ( getreal "\nAçınım için Duz Eksen çapını giriniz...? " ) konidurum "KARE" ) ( setq dr1y ( getreal "\nAçınım için Eksen Küçük Çapını giriniz...? " ) konidurum "KONI" ) )
( if ( = dr2y dr1y ) ( setq dr1 dr1y konidurum "KARE" ) )
( if ( = konidurum "KONI" ) ( progn
( if ( > dr2y dr1y ) ( setq dr2 dr2y dr1 dr1y ) ( setq dr2 dr1y dr1 dr2y ) )
( setq kuz5 ( getreal "\nAçınım için uzunluk ölçüsünü giriniz...? " ) )
( setq kuz3 ( / ( * kuz5 ( / dr2 2.0 ) ) ( / ( - dr2 dr1 ) 2.0 ) ) )
( setq uz2 ( sqrt ( + ( expt kuz3 2.0 ) ( expt ( / dr2 2.0 ) 2.0 ) ) ) )
( setq uz3 ( sqrt ( + ( expt kuz5 2.0 ) ( expt ( / ( - dr2 dr1 ) 2.0 ) ) ) ) )
( setq uz1 ( - uz2 uz3 ) )
( konac uz1 uz2 dr1 dr2 ) ) )
( if ( = konidurum "KARE" ) ( progn
( setq uz1 ( getreal "\nAçınım için uzunluk ölçüsünü giriniz...? " ) )
( kareac uz1 dr1 ) ) )
)
;;**********************************************************************
( Defun eicac ( / dr2y dr1y dr2a dr1a dr2 dr1 konidurum sckal kuz6 kuz5 kuz3 kuz3a uz2a uz2 uz3 uz1 )
( setq dr2y ( getreal "\nAçınım için İç Büyük Çapını giriniz...Duz ise Boş geçiniz...? " ) )
( if ( = nil dr2y ) ( setq dr1a ( getreal "\nAçınım için Duz İç çapını giriniz...? " ) konidurum "KARE" ) ( setq dr1y ( getreal "\nAçınım için İç Küçük Çapını giriniz...? " ) konidurum "KONI" ) )
( if ( = dr2y dr1y ) ( setq dr1a dr1y konidurum "KARE" ) )
( if ( = konidurum "KONI" ) ( progn
( if ( > dr2y dr1y ) ( setq dr2a dr2y dr1a dr1y ) ( setq dr2a dr1y dr1a dr2y ) )
( setq kuz5 ( getreal "\nAçınım için uzunluk ölçüsünü giriniz...? " ) )
( setq sckal ( getreal "\nSaç Kalınlığını giriniz...? " ) )
( setq kuz3a ( / ( * kuz5 ( / dr2a 2.0 ) ) ( / ( - dr2a dr1a ) 2.0 ) ) )
( setq uz2a ( sqrt ( + ( expt kuz3a 2.0 ) ( expt ( / dr2a 2.0 ) 2.0 ) ) ) )
( setq kuz6 ( / ( * kuz3a sckal ) uz2a ) )
( setq dr2 ( + dr2a kuz6 ) )
( setq dr1 ( + dr1a kuz6 ) )
( setq kuz3 ( / ( * kuz5 ( / dr2 2.0 ) ) ( / ( - dr2 dr1 ) 2.0 ) ) )
( setq uz2 ( sqrt ( + ( expt kuz3 2.0 ) ( expt ( / dr2 2.0 ) 2.0 ) ) ) )
( setq uz3 ( sqrt ( + ( expt kuz5 2.0 ) ( expt ( / ( - dr2 dr1 ) 2.0 ) ) ) ) )
( setq uz1 ( - uz2 uz3 ) )
( konac uz1 uz2 dr1 dr2 ) ) )
( if ( = konidurum "KARE" ) ( progn
( setq uz1 ( getreal "\nAçınım için uzunluk ölçüsünü giriniz...? " ) )
( setq sckal ( getreal "\nSaç Kalınlığını giriniz...? " ) )
( setq dr1 ( + dr1a sckal ) )
( kareac uz1 dr1 ) ) )
)
******************************************************************************************************
( Defun edisac ( / dr2y dr1y dr2a dr1a dr2 dr1 konidurum sckal kuz6 kuz5 kuz3 kuz3a uz2a uz2 uz3 uz1 )
( setq dr2y ( getreal "\nAçınım için Dış Büyük Çapını giriniz...Duz ise Boş geçiniz...? " ) )
( if ( = nil dr2y ) ( setq dr1a ( getreal "\nAçınım için Duz Dış çapını giriniz...? " ) konidurum "KARE" ) ( setq dr1y ( getreal "\nAçınım için Dış Küçük Çapını giriniz...? " ) konidurum "KONI" ) )
( if ( = dr2y dr1y ) ( setq dr1a dr1y konidurum "KARE" ) )
( if ( = konidurum "KONI" ) ( progn
( if ( > dr2y dr1y ) ( setq dr2a dr2y dr1a dr1y ) ( setq dr2a dr1y dr1a dr2y ) )
( setq kuz5 ( getreal "\nAçınım için uzunluk ölçüsünü giriniz...? " ) )
( setq sckal ( getreal "\nSaç Kalınlığını giriniz...? " ) )
( setq kuz3a ( / ( * kuz5 ( / dr2a 2.0 ) ) ( / ( - dr2a dr1a ) 2.0 ) ) )
( setq uz2a ( sqrt ( + ( expt kuz3a 2.0 ) ( expt ( / dr2a 2.0 ) 2.0 ) ) ) )
( setq kuz6 ( / ( * kuz3a sckal ) uz2a ) )
( setq dr2 ( - dr2a kuz6 ) )
( setq dr1 ( - dr1a kuz6 ) )
( setq kuz3 ( / ( * kuz5 ( / dr2 2.0 ) ) ( / ( - dr2 dr1 ) 2.0 ) ) )
( setq uz2 ( sqrt ( + ( expt kuz3 2.0 ) ( expt ( / dr2 2.0 ) 2.0 ) ) ) )
( setq uz3 ( sqrt ( + ( expt kuz5 2.0 ) ( expt ( / ( - dr2 dr1 ) 2.0 ) ) ) ) )
( setq uz1 ( - uz2 uz3 ) )
( konac uz1 uz2 dr1 dr2 ) ) )
( if ( = konidurum "KARE" ) ( progn
( setq uz1 ( getreal "\nAçınım için uzunluk ölçüsünü giriniz...? " ) )
( setq sckal ( getreal "\nSaç Kalınlığını giriniz...? " ) )
( setq dr1 ( - dr1a sckal ) )
( kareac uz1 dr1 ) ) )
)

;;********************************************************************************************************************************************************************************
( defun konac ( uz1 uz2 dr1 dr2 / os1 cc cl ol_1 klnpnt ekaci sag sol yuka asa bcevre kcevre dr1cvr dr2cvr sknaci ykn1 ykn2 kuz1 kuz2 kuz3 kuz4 kuz5 pt1 pt2 pt3 pt7 pt4 pt5 pt6 )
( setq os1 ( getvar "osmode" )
cc ( getvar "cecolor" )
cl ( getvar "celtype" )
ol_1 ( getvar "dimscale" ) )
( setvar "osmode" 0 )
( setq klnpnt ( getpoint "\nBir Nokta işaretleyiniz...? " ) )
( setq ekaci ( getreal "\nAçınım hangi açıda çizilmeli. ---->X"0derece" Saat yönünün tersi düşünülerek açıyı veriniz...? " ) )
( if ( = ekaci nil ) ( setq ekaci 0.0 ) )
( setq sag ( aci ( + ekaci 0.0 ) )
sol ( aci ( + ekaci 180.0 ) )
yuka ( aci ( + ekaci 90.0 ) )
asa ( aci ( + ekaci 270.0 ) ) )
( setq bcevre ( * uz2 pi 2.0 )
kcevre ( * uz1 pi 2.0 )
dr1cvr ( * dr1 pi )
dr2cvr ( * dr2 pi )
sknaci ( aci ( / ( / 360.0 ( / bcevre dr2cvr ) ) 2.0 ) )
ykn1 ( * ( sin sknaci ) uz1 2.0 )
ykn2 ( * ( sin sknaci ) uz2 2.0 )
kuz1 ( / ( / ykn1 ( / ( sin sknaci ) ( cos sknaci ) ) 2.0 ) )
kuz3 ( / ( / ykn2 ( / ( sin sknaci ) ( cos sknaci ) ) 2.0 ) )
kuz2 ( - uz1 kuz1 )
kuz4 ( - uz2 kuz3 )
kuz5 ( - kuz3 kuz1 ) )
( setq pt1 ( polar klnpnt asa ( / ykn1 2.0 ) )
pt2 ( polar klnpnt sag kuz2 )
pt3 ( polar klnpnt yuka ( / ykn1 2.0 ) )
pt7 ( polar klnpnt sag kuz5 )
pt4 ( polar pt7 asa ( / ykn2 2.0 ) )
pt5 ( polar pt7 sag kuz4 )
pt6 ( polar pt7 yuka ( / ykn2 2.0 ) ) )
( setvar "cecolor" "21" )
( setvar "celtype" "CENTER2" )
( command "line" klnpnt pt5 "" )
( setvar "cecolor" cc )
( setvar "celtype" cl )
( command "ARC" pt1 pt2 pt3 "ARC" pt4 pt5 pt6 )
( command "Line" pt1 pt4 "" "Line" pt3 pt6 "" )
( setvar "osmode" os1 )
)
;;******************************************
( defun kareac ( uz1 dr1 / os1 cc cl ol_1 klnpnt ekaci sag sol yuka asa dr1cvr pt1 pt2 pt3 pt4 pt5 pt6 )
( setq os1 ( getvar "osmode" )
cc ( getvar "cecolor" )
cl ( getvar "celtype" )
ol_1 ( getvar "dimscale" ) )
( setvar "osmode" 0 )
( setq klnpnt ( getpoint "\nBir Nokta işaretleyiniz...? " ) )
( setq ekaci ( getreal "\nAçınım hangi açıda çizilmeli. ---->X"0derece" Saat yönünün tersi düşünülerek açıyı veriniz...? " ) )
( if ( = ekaci nil ) ( setq ekaci 0.0 ) )
( setq sag ( aci ( + ekaci 0.0 ) )
sol ( aci ( + ekaci 180.0 ) )
yuka ( aci ( + ekaci 90.0 ) )
asa ( aci ( + ekaci 270.0 ) ) )
( setq dr1cvr ( * dr1 pi )
pt1 ( polar klnpnt yuka ( / uz1 20.0 ) )
pt2 ( polar klnpnt asa ( + uz1 ( * ( / uz1 20.0 ) 2.0 ) ) )
pt3 ( polar klnpnt sag ( / dr1cvr 2.0 ) )
pt4 ( polar klnpnt sol ( / dr1cvr 2.0 ) )
pt5 ( polar pt3 asa uz1 )
pt6 ( polar pt4 asa uz1 ) )
( setvar "cecolor" "21" )
( setvar "celtype" "CENTER2" )
( command "line" pt1 pt2 "" )
( setvar "cecolor" cc )
( setvar "celtype" cl )
( command "Line" pt3 pt4 pt6 pt5 pt3 "" )
( setvar "osmode" os1 )
)

29.08.2018 13:07    

Travaci
Bu kadarını yapıp çizgi tipini neden eklemediğin sorusunu akıllara getiren paylaşım : )

30.08.2018 05:12    

Myalem
:-) sonradan aklıma geldi üşendim :-) Ama kesinlikle haklısınız...

> 1 <
Copyright © 2004-2022 SQL: 1.069 saniye - Sorgu: 48 - Ortalama: 0.02228 saniye