1372826956:AAFe2Py65GSQkfGiRnXuOQ-eD9yXcwMv988

AutoCAD’de Programları Otomatik Olarak Yükleme

Bu makalemde sizlere, başlangıçta otomatik olarak bir programı yüklemek için kullanılabilecek çeşitli yöntemleri anlatacağım.

Şayet düzenli olarak kullandığınız bir LISP programları araç kutunuz varsa, bir çizim her açıldığında tüm programların yüklenmesi sıkıcı olacaktır. Neyse ki, bu görevi yerine getirmek için her biri farklı durumlarda kendi avantajları olan iki yöntem sunacağım.

Yöntem 1: Başlangıç Suitini “Startup Suite” Kullanma

Bu, belki de kullanıcının herhangi bir LISP deneyimine sahip olması gerekmediğinden, başlangıçta bir programı otomatik olarak yüklemek için, kullanılan en kullanıcı dostu yöntemdir.

Öncelikle, AutoCAD komut satırına APPLOAD (AP) yazın (alternatif olarak, Araçlar  “Tools” menüsü içerisinde » Uygulama Yükle “Load Application“ komutunu da kullanabilirsiniz).

Daha sonra aşağıdaki şekilde görüldüğü üzere, görüntülenen Uygulama Yükle/Kaldır “Load/Unload Application” iletişim kutusunda, Başlangıç Suiti “Startup Suite”  kısmındaki İçindekiler “Contents” düğmesine tıklayın:

Aşağıdaki şekilde görünen, başlangıçta yüklenecek programların eklenebileceği bir ikinci bir iletişim kutusu görüntülenir. Başlangıçta yüklenecek programları eklemek için, Ekle “Add” düğmesine tıklayın ve istediğiniz programı araştırıp bularak seçin.

Yukarıdaki panelde listelenen tüm programlar, her çizim açıldığında yüklenecektir.

Programları otomatik olarak yüklemek için Başlangıç Suitini “Startup Suite” kullanma yöntemi bazı dezavantajlara sahiptir: kullanıcı kendi programlarını başka bir bilgisayara taşımak isterse, tüm programların yeni bilgisayardaki Başlangıç Suitine “Startup Suite” eklenmesi gerekecektir.

Ayrıca, AutoCAD’in geçmiş sürümlerinde Başlangıç Paketi’ni çevreleyen bilinen birkaç hata vardı. Bu sebeplerden ötürü, kullanıcıya bazı temel AutoLISP bilgisine sahip olmak zorunda olunmasına rağmen (ki, siz site üyelerinin artık temel AutoLISP bilgisine sahip olduğunuzu biliyorum.), bu zorlukların üstesinden gelen başka bir yöntem sunacağım.

Yöntem 2: ACADDOC.lsp Lispini Kullanma

Bir çizimi açtıktan veya yeni bir çizime başladıktan sonra AutoCAD, dosya adı ACADDOC.lsp olan bir dosyanın bulunduğu çalışma dizini de dahil olmak üzere tanımlanmış tüm destek klasör yollarını arayacaktır. Şayet bir veya daha fazla dosya bulunursa, AutoCAD bulunan ilk dosyayı yüklemeye devam edecektir.

Bu bilgiyle, başlangıçta değerlendirilecek olan herhangi bir AutoLISP ifadesini eklemek için bir ACADDOC.lsp dosyası düzenleyebilir veya oluşturabilirsiniz.

Şayet birden fazla ACADDOC.lsp dosyası varsa bazı şeyler karmaşık hale gelir, bu nedenle böyle bir dosyanın mevcut olup olmadığını kontrol etmek için aşağıdaki satırı AutoCAD komut satırına yazın veya kopyalayıp yapıştırın:

(findfile “ACADDOC.lsp”)

Şayet Bir dosya klasör yolu döndürülürse, takip eden adımlarda bu dosyaya gidin ve içeriğini değiştirin. Başka bir deyişle, yukarıdaki satır boş “nil” sonucunu döndürürse, kendi ACADDOC.lsp dosyanızı Not Defteri’nde veya AutoCAD’e entegre VLisp VLIDE ortamında oluşturabilir ve bir AutoCAD destek klasör yolunda saklayabilirsiniz.

ACADDOC.lsp dosyasını otomatik olarak program yüklemek için kullanmanın açık bir avantajı, bilgisayardan bilgisayara geçişlerde kolayca kopyalayabilme veya programları aynı anda birçok bilgisayara yüklemek için bir ağda aynı anda bulundurabilmedir.

Load Fonksiyonu

Load fonksiyonu, mevcut bir çizim oturumuna etkin bir şekilde bir program dosyası (.lsp/.fas/.vlx) yükler ve (şayet bulursa) verilen dosya adına sahip bir dosyanın içindeki tüm AutoLISP ifadelerini değerlendirecektir.

Load fonksiyonu iki argüman alır:

(load <dosyaismi> [on failure])

Burada filename yüklenecek bir program dosyasının dosya adıdır ve şayet programın yüklenmesi başarısız olursa, ( genellikle bir dizge veya boş “nil” olan) isteğe bağlı bir argüman geri döndürülür.

Şayet program dosyası bir AutoCAD destek dosya klasör yolunda bulunuyorsa, dosya adı yalnızca yüklenecek dosyanın adı olmalıdır; aksine, şayet dosya bir AutoCAD destek dosya klasör yolunda bulunmuyorsa, dosyayı bulmak için, tam bir dosya yolu gereklidir, örneğin:

AutoCAD destek dosya klasör yolunda bulunan dosya:

(load “Programım” “Programım  yüklenemedi.”)(load “LISPim.lsp” “LISP’im yüklenemedi.”)

AutoCAD destek dosya klasör yolunda bulunmayan dosya:

(load “C:\\Sertan\\Programım.vlx” ” Programım  yüklenemedi.”)

Dosya uzantısının atlanması gerektiğinde, bir dosya bulduğunda, load fonksiyonu sırasıyla .vlx, .fas, .lsp dosya uzantılarını ekleyeceğini unutmayın.

Başarısızlık “on failure” değişkeni isteğe bağlı olmasına rağmen; load fonksiyonuna bu ifadeyi eklemenizi öneririm. Aksi takdirde fonksiyon yüklenemediği zaman, fonksiyon hata döndürecektir.

Bu bilgiyi kullanarak, ACADDOC.lsp dosyamız başlangıçta yüklendiğinde değerlendirilecek olan load ifadeleri ile ACADDOC.lsp dosyamızı doldurabiliriz.

Bu şekilde ACADDOC.lsp dosyası aşağıdaki gibi görünebilir:

(load “C:\\MyPrograms\\LISPim.lsp” ” LISP’im yüklenemedi.”)

(load “F:\\Sertan\\Uygulamam.fas” ” Uygulamam yüklenemedi.”)

(load “Programım” “Programım yüklenemedi.”)

Load fonksiyonunu kullanan bir ACADDOC.lsp dosyasının oluşturulmasına yardımcı olmak için, ACADDOC.lsp oluşturucu programını oluşturdum. Bu program ACADDOC.lsp dosyasına bir klasördeki (ve o klasörün alt klasörlerindeki) tüm programları yüklemek için kullanılabilir ve böylece sıkıcı yazım işlerinden kurtulabilirsiniz.

Load fonksiyonunu kullanmanın bir dezavantajı kullanıcı çok sayıda program yüklemek istediğinde, ortaya çıkar. Bu yöntem, her programın bir çizim her açıldığında belleğe yüklenmesini sağlayacaktır, bu nedenle çok sayıda programın yüklenmesi gerekiyorsa, bir çizimin açılması için gereken zaman önemli ölçüde artabilir.

Bu gecikmeden kaçınmak için, programlar isteğe bağlı yükleme “’demand-loaded” hale getirilebilir; yani bir kullanıcı onlara ihtiyaç duyduğunda yüklenirler. Bunun için AutoLoad fonksiyonunu kullanırız.

AutoLoad Fonksiyonu

AutoLoad fonksiyonu, kullanıcının komut satırına belirli bir komut girildiğinde bir AutoLISP dosyasını yüklemesini sağlar. Bu, kullanıcıların istediği zaman programları yalnızca o anki geçerli (aktif) çizim oturumuna yüklediği için, kullanıcı birçok programı otomatik olarak yüklemek isterse, bir çizimin açılması için gereken süreyi ve kullanılan bellek miktarını önemli ölçüde azaltabilir.

AutoLoad fonksiyonunun yazımı aşağıdaki biçimdedir:

(autoload <dosyaismi> <cmdlist>)

Burada dosya adı bir AutoLISP dosyasının adıdır ve load fonksiyonu ile aynı kuralları izler: Şayet AutoLISP dosyası bir AutoCAD destek klasör yolunda bulunuyorsa yalnızca dosya adı gerekir; aksi takdirde tam dosya klasör yolu gerekecektir.

Cmdlist, kullanıcı geçerli çizim oturumuna yüklenecek dosyada bulunan yazabileceği komutların listesidir.

Bu yöntem aşağıdaki örnek ile gösterilmiştir. Aşağıdaki LISP programına göz atın:

(defun c:DrawLine ( / p q )

   (if (and (setq p (getpoint “\nBirinci noktayı belirleyin: “))

           (setq q (getpoint “\nSonraki noktayı belirleyin: “ p)))

               (entmake (list (cons 0 “LINE”) (cons 10 (trans p 1 0))

(cons 11 (trans q 1 0))))

  )

  (princ)

)

Yukarıdaki program sadece seçilen iki nokta arasında bir çizgi oluşturacaktır; ancak daha da önemlisi, bu örnek için, şu DrawLine sözdizimi ile çağrılabilir:

Yukarıdaki kodu, AutoCAD destek klasör yolunda bulunan bir LISP dosyasına (LineProgram.lsp  ismi ile) kaydedildiğini varsayalım:

Bu programı gerektiğinde otomatik olarak yüklemek için aşağıdaki satırı ACADDOC.lsp dosyasına ekleyebiliriz:

(autoload “LineProgram” ‘(“DrawLine”))

Şimdi, bir çizim açtığımızda veya yeni bir çizim oluşturduğumuzda, komut satırına DrawLine yazarsak, o anki geçerli (aktif) çizim oturumuna LineProgram.lsp dosyası yüklenecek ve program başlatılacaktır.

Şayet program dosyası birden fazla komut içeriyorsa, AutoLoad fonksiyonuna verilen listeye ek komutlar eklenebilir, dolayısıyla kullanıcı listedeki herhangi bir komutu yazarak yüklenen dosyanın çalıştırılmasını sağlayabilir.

 

 

Hakkında Sertan Türkan

AutoCAD Beyni

Bunu da Kontrol edin

Revitte Kesit Başlığı Ailesi Oluşturma

Revit’te kesit başı sembolünüze çizim ve pafta numaraları ekleyebilirsiniz. Aşağıdaki prosedür, bir kesit başı ailesi …

Bir cevap yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.

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.