Kullanıcı Adı : Şifre : Beni Hatırla ?  Ücretsiz Üyelik  |  Şifremi unuttum?  |  Arkadaşa tavsiye Tavsiye et
Forumda laubali konuşmalar ve teknik bilgi içermeyen yorumlar yasaklanmıştır. Yorumlarını, cevaplarını düzgün ve düzeyli bir Türkçe ile yapmayan üyeler siteden uzaklaştırılacak, gönderdiği iletiler silinecektir.
Forum için önerilen resim genişliği: 560 pikseldir.

 

Bu başlığı inceleyenler : 1 ziyaretçi, 0 üye : ---

5 kullanıcı bu konuya ileti yazdı : ehya (2) Harbi65 (1) miyatu (1) SENDUR (1) tekir06 (1)

> 1 <

Yazar İleti
ehya

[70] Editör


Online Durumu

1974 ileti
Şehir: Türkiye Ankara
Meslek: Teknik Ressam
Yaş: 27

Arkadaş Listeme Ekle

#37794   17.06.2008 12:39 GMT      
Autolisp nedir?

Asıl anlamda LISP, yapay zeka çalışmalarında kullanılan bir program dilidir. List Processing 'in (Liste işleme) kısaltılmış ifadesidir. AutoLISP ise LISP'in AutoCAD ile kullanılabilecek şekilde uyarlanmış halidir. AutoLISP sayesinde kullanıcının AutoCAD'e yeni komutlar eklemesi kişiselleştirmesi ve ondan artan bir verim elde etmesi mümkündür. Tabii ki yeni komutlar'dan kastedilen, kullanıcının AutoLISP fonksiyonlarını kullanarak hazırladığı program dosyalarını AutoCAD ortamından çağırarak kullanmasıdır. Autocad 2000'den sonra autocad içinde gömülü olarak gelen Visual Lisp editörü lisp kodlamak için kullanılan çok kullanışlı bir programdır. Lisp kodlamaya yeni başlayacak arkadaşlara bu programı öneririm.
Tools --> Autolisp --> Visual Lisp Editor seçeneğinden lisp derleyicisine ulaşabilirsiniz.

AutoLISP dosyalarının ASCII dosyalar yaratabilen bir kelime işlemcide (text editor) hazırlanması ve uzantısının *.LSP olması bir zorunluluktur.

AutoLISP dosyaları aslında fonksiyonlardan meydana gelmektedir. Kullanıcı, bir takım standart fonksiyonları kullanarak veya kendisi çeşitli fonksiyonlar tanımlayarak yapmak istediklerini gerçekleştirir. Gerek standart fonksiyonlar gerekse kullanıcı tanımlı fonksiyonlar, değişkenlere değerler atanması, bu değerlerin AutoLISP tarafından değerlendirilerek sonuçlar elde edilmesi mantığına göre çalışır. AutoLISP programlarda büyük küçük harf ayrımı yapmaz.

Burada < > işaretleri arasında yer alanlar fonksiyona yazılacak değişkenleri .... ise ardışık girişleri temsil eder. , fonksiyona gerekli olan bir değer veya değeri önceden atanmış bir değişken olabilir.


Her lisp deyimi parantezle başlar ve parantezle biter. İç içe yazılan fonsiyonlarda program önce en içteki değerleri yorumlar ardından bi sonraki değerleri yorumlayarak sonuca gider.

Örneğin :

(/ 160 (+ 32 (* 2 4)))


Yukarıdaki örnekte en içteki fonksiyon (* 2 4) fonksiyonudur. Program önce bu değeri sorgular. Sonucu aldıktan sonra bu değeri “32” ile toplar. Bu sonucu da aldıktan sonra en sonraki değere bölerek sonucu verir.

Sonuç : 4

Matematiksel işlemleri bu şekilde en içten en dışa doğru sıralayarak yapabilirsiniz.

Matematiksel işlemler ile ilgili belirtmek istediğim bir nokta ise;
Autolisp yorumlayıcısı iki tam sayının bölümünü elde etmek için yuvarlama yapar.

Örneğin ;

(/ 22 3)
Sonuç : 7


Halbuki bu işlemin sonucu 7.3333 dür.
Bu şekilde sonuç almak için bölecek sayıyı 3.0 şeklinde girerek sonucu tam olarak alabiliriz


Autolisp içinde değişkenleri kullanırken 2 tip örnek vardır. Birincisi reel sayı, diğeri ise dizelerdir.
Autocad bazı değerlerini reel olarak ister bazılarını ise dize olarak ister.
Bunun anlamı şu demek.

(setq deger 10)
(setq yazi “mehmet”)

Yukarıda görüldüğü gibi deger isminde bi girdi oluşturuldu ve girdiye 10 değeri verildi. Yorumlayıcı bunu reel sayı olarak algılar ve herhangi bir kodlama da bu değeri matemaiksel işlemlere sokabilirsiniz. Ancak bu değeri (setq deger “10”) deseydik bu degeri dize olarak algılayıp herhangi bir matematiksel işlemde kullanamayacaktır.
Sayı olmayan sadece metin olarak ifade edilen değerleri her zaman dize olarak tanımlamalısınız.
Örnekte belirtildiği gibi (setq yazi “mehmet”) girdisinde bu “mehmet” ismini dize olarak algılayıp bununla ilgili herhangi bir işleme sokabiliriz. Yapılacak işlemleri ileri ki derslerde daha açıklayıcı olarak anlatacağım.

Harbi65

[10] Binbaşı


Online Durumu

464 ileti
Şehir: Türkiye KASTAMONU
Meslek: İnş. Teknikeri
Yaş: 43

Arkadaş Listeme Ekle

#37795   17.06.2008 13:39 GMT      
Sonunda başlangıç yaptın.. Eline sağlık...
Bende dahil bu konuya merakı olan çok kişinin işine yarayacaktır... Umarım devamını da getirirsin...

_________________________________________________________________________________________

ehya

[70] Editör


Online Durumu

1974 ileti
Şehir: Türkiye Ankara
Meslek: Teknik Ressam
Yaş: 27

Arkadaş Listeme Ekle

#37796   17.06.2008 13:46 GMT      
Şuan diğer dersleri hazırlamaya çalışıyorum. Tabi aklımdaki komut anlamlarını kağıda dökebilirsem

SENDUR

[8] Yüzbaşı


Online Durumu

219 ileti
Şehir: Türkiye Ankara
Meslek: Mak. Res. Konst. Öğrt.
Yaş: 27

Arkadaş Listeme Ekle

#37797   17.06.2008 14:44 GMT      
1 sene bu bu programını dersini verdiler okulda bize tam 3 sene sonunda geçtim onuda kopya ile . okulda iken bu programı veren hocaya ( hüdayim başak) çok hiç iyi bakmazdık. bi program öğrenmiş gelmiş onuda yarım yamalak öğrenmiş gelmiş bize anlatıp anlatıp geçiyor diye çok kızardık. ama şimdi zamanın olsa sıfırdan başlar öğrenirim.

miyatu

[3] Teğmen


Online Durumu

15 ileti
Şehir: Türkiye
Meslek:
Yaş:

Arkadaş Listeme Ekle

#37804   17.06.2008 19:02 GMT      
bu çalışmaya başlaman beni çok sevindirdi inş. devamıda gelir...

TEŞEKKÜRLER...

O-Ö

K-L

U-Ü

L-M

KANDIRILIYORUZ

tekir06

[5] Üsteğmen


Online Durumu

59 ileti
Şehir: Türkiye ankara
Meslek: tek.Res.
Yaş:

Arkadaş Listeme Ekle

#37847   18.06.2008 12:25 GMT      
usta sağolasın.Merak ediyordum.Çok faydalı olacak

çArşı

> 1 <