AUTOLISP İÇİNDE OSNAP AYARLARI

AUTOLISP İÇİNDE OSNAP AYARLARI

Osnap’ın açık olması kimi lisp programlarında programda başka hiçbir hata olmamasına rağmen istenilen sonucu vermez. Şayet bir lisp programı çalıştırıldıktan sonra dwg ortamındaki nesneler birbirine giriyorsa ilk şüphe duyulması gereken noktalardan biri osnap ayarları olmalıdır.

Elbette program çalışırken Autocad’e dönüp F3 ile oynamak mümkün olmayacağına göre osnap’ı istediğimiz zaman kapatabilen (keza istediğimiz zaman açabilen) kodlar yazmak en mantıklı çözümdür.

Aşağıdaki fonksiyon osnap’ı kapamaya yarar.

(defun osnap-off ()
(setvar "osmode" (logior (getvar "osmode") 16384))
)

Ama kimi durumlar vardır ki, osnap’ın ille de açık olması gerekir. Örneğin lisp içinde yarattığımız bir dairenin merkezine bir blok yerleştirmek gerektiğinde imlecin dairenin merkezini hatasız bulması gerekir. Yine böyle bir durumda lisp çalışması kesilemeyeceğine göre bu işi yapacak bir rutine ihtiyaç vardır.

Aşağıdaki rutin dilediğimiz zaman osnap’ı açmak için kullanabileceğimiz bir fonksiyodur.

(defun osnap-on ()
(setvar "osmode" (logand (getvar "osmode") (~ 16384)))
)

Lispin istediğimiz bölümünde (osnap-on) ya da (osnap-off ) yazarak açma kapama işlemini kolaylıkla yapabiliriz.

APK BİLGİSAYAR – YAZILIM
apkbilgisayar@gmail.com

Yorumlar

  1. PROGRAMI YUKLADIM AMA KOMUT LISTESİ GELMEDI....

    YanıtlaSil
  2. Merhabalar,
    Yukarıda verdiğim örnekleri iki ayrı lisp şeklinde kullanmak istiyorsunuz sanırım ama F3 bunu zaten yapıyor. Benim anlatmak istediğim bir program içinde osnap ayarlarının nasıl yapılabileceği idi.
    Ama buna rağmen iki ayrı lisp istiyoranız, (defun osnap-on () yerine (defun c: osnap-on (), (defun osnap-off () yerine (defun c: osnap-off () yazmanız ve sonra bunları ayrı lisp dosyaları olarak kaydetmeniz gerekir. Sonrasında komut satırından yüklediğiniz zaman, ikisinin komutları da görünecektir.
    Kolay gelsin...

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

AUTOLISP DOSYALARININ KALICI KULLANIMI

AUTOLISP PROGRAMLARINI ÇALIŞTIRMAK

MS Access Veritabanı Tablosuna Visual Basic ile Veri Eklemek