Visual LISP Dersleri Visual LISP’e Giriş – Ders-6 Visual LISP Düzenleyicisi-Kısım #2

Doğru, yeterince karışık. Şimdi biraz kod yazalım ve bu karışıklıkları çözümlemeye çalışalım. VLISP Düzenleyicisinin Dosya “File“ menüsünün altında den Yeni Dosya “New File “ komutunu seçin ve ardından aşağıdaki kodu kopyalayıp açılan metin düzenleyicisine yapıştırın:

(defun C:SLOT ( )

(setvar “CMDECHO” 0)

(setvar “BLIPMODE” 0)

(setq oldsnap (getvar “OSMODE”))

(setq diam (getdist “\nSlot Çapı : “)

lngth (getdist “\nSlot Boyu : “))

(while

(setq pt1 (getpoint “\nYerleştirme noktası:”))

(setvar “OSMODE” 0)

(setq pt2 (polar pt1 0.0 (/ (- lngth diam) 2.0))

pt3 (polar pt2 (/ pi 2.0) (/ diam 4.0))

pt4 (polar pt3 pi (- lngth diam))

pt5 (polar pt4 (* pi 1.5) (/ diam 2.0))

pt6 (polar pt5 0.0 (- lngth diam)))

(command “PLINE” pt3 “W” (/ diam 2.0) “” pt4

“ARC” pt5 “LINE” pt6 “ARC” “CLOSE”)

(setvar “OSMODE” oldsnap)

);while fonksiyonu sonu

(princ)

) ;defun fonksiyonu sonu

(princ)

Kod, metin düzenleyicisinde aşağıdaki şekilde göründüğü gibi görünmelidir:

Daha ileri gitmeden önce, renkler hakkında sohbet edelim. VLISP Konsolu’na veya metin düzenleyici pencerelerine metin girer girmez, VLISP, girilen kelimenin yerleşik bir AutoLISP fonksiyonu “built-in AutoLISP function”, bir sayı “number”, bir dize “string” veya başka bir kodlama dili öğesi olup olmadığını belirlemeye çalışır. VLISP her öğe türüne kendi rengini atar. Bu eksik tırnak işaretlerini veya hatalı yazılmış function adlarını bulmanıza yardımcı olur. Varsayılan renk düzenini aşağıdaki tabloda gösterilmektedir.

AutoLISP Dil Elemanı Renk
Yerleşik fonksiyonlar ve korumalı semboller Mavi
Dize Macenta
Tam sayılar Yeşil
Reel sayılar Turkuaz
Açıklamalar  Gri zemin üzerine Bordo 
Parantezler Kırmızı
(Kullanıcı değişkenleri gibi)

Tanımlanamayan öğeler

Siyah

Varsayılan renkleri değiştirebilirsiniz. Ancak, kendinize bir iyilik yapın. Değiştirmeyin!

Metin Seçme

Metni seçmenin en basit yöntemi farenizin sol tuşuna çift tıklamaktır. Seçilecek metin miktarı imlecin bulunduğu yere bağlıdır.

  • Şayet imleç açık bir parantezden hemen önce gelirse, VLISP eşleşen kapatma parantezine kadar aşağıdaki tüm metinleri seçer.
  • Şayet imleç bir yakın parantezin hemen ardından gelirse, VLISP eşleşen açık paranteze kadar önceki tüm metni seçer.
  • Şayet imleç bir sözcüğün hemen önünde veya arkasındaysa veya bir sözcük içindeyse, VLISP bu sözcüğü seçer.

İpucu: Herhangi bir AutoLisp işlevi hakkında yardıma mı ihtiyacınız var? Seçmek için fonksiyon adını çift tıklatın ve ardından Yardım “Help” araç çubuğu düğmesini seçin. Seçtiğiniz fonksiyon için yardım görüntülenir.

Slot lisp yordamını yüklemek için, aşağıdaki şekilde görünen Aktif  Düzenleme Penceresini Yükle “Load active edit window“ araç çubuğu düğmesini seçin:

Bu, kodlamayı belleğe yükler. Rutini çalıştırmak için, bunu Konsol “Console” istemine aşağıdakileri yazın:

_$ (c:slot)

Program şimdi çalışmalı, gerektiğinde AutoCAD ekranına geçilmelidir. Şayet isterseniz, kodun yalnızca seçtiğiniz kısmını çalıştırabilirsiniz. Çalıştırmak istediğiniz kod satırlarını seçin ve Seçimi Yükle “Load selection“ araç çubuğu düğmesini seçin ve sonra Enter tuşuna basın.

Yalnızca seçtiğiniz kod satırları çalıştırılacaktır. Hata ayıklama için harika bir yöntem değil mi?

Hata ayıklamaktan bahsetmişken; imleci (defun C: SLOT () ifadesinin başına getirin ve F9 tuşuna basın. Bu programınıza  bir kesme noktası yerleştirir. Daha sonra programı tekrar çalıştırın. Programın çalışması bu kesme işaretinde durmalıdır. F8 tuşuna basın Sürekli olarak F8 tuşuna basarak tüm programınıza tek adım atabilirsiniz:

Şimdi bir adım daha ileri gidelim. Diam değişkenini seçin ve ardından İzleme Ekle “dd Watch“ araç çubuğu düğmesini seçin:

Aşağıdaki şekilde görünen İzleme “Watch” iletişim kutusu görüntülenecektir:

Diam değişkeninin şimdiki değeri ile birlikte nasıl listelendiğine dikkat edin. İzleme “Watch“ iletişim kutusu aşağıdaki şekildeki gibi görünene kadar diğer tüm değişkenler için bu işlemi tekrarlayın:

Şimdi programı yine adım adım ilerleyecek şekilde tekrar çalıştırın. Program ilerledikçe değişkenlerin değerlerinin nasıl değiştiğine dikkat edin.

Tamam, işleri biraz canlandıralım. Tüm kesme noktalarını silmek için Ctrl-Shift-F9 tuşlarına basın. Şimdi, Hata ayıklama “Debug” aşağı açılır menüsünden  Anime et “Animate” seçeneğini seçin ve programı tekrar çalıştırın.

Hey, otomatik olarak çalışıyor değil mi? Programın yaptığı gibi İzle “Watch” penceresinde değişen değişkenleri not edin.

Bu, Visual LISP Editör harika! Editör size burada gösterdiğimden daha fazla fonksiyona sahip ancak bunlar başlamak için daha önemli olanlardan bazıları.

 

 

 

Hakkında Sertan Türkan

AutoCAD Beyni

Bunu da Kontrol edin

Revitte Filtreler Listesi

Revit’te çeşitli iletişim kutularında, kategorileri disipline göre filtrelemek için Filtre “Filter” listesini kullanabilirsiniz. Kategorilerini listelemek …

Bir cevap yazın

Yardıma mı ihtiyacınız var? Chat with us
Bir görüşme başlatmak için lütfen önce gizlilik politikamızı kabul edin.