OLE ve ActiveX Otomasyonunun AutoCAD’de Kullanımına Bir Örnek
![]() |
Yazar | Özgür Özkurt |
| Mesleği | Mak. Müh. Öğrencisi | |
| web | ||
![]() |
AutoCAD 2000 ve üzeri sürümler
Merhaba,
OLE (Object Linking And Embedding), mantığı kısaca bir uygulama tarafından sunulan nesneler sayesinde diğer bir uygulamadan kontrol edilmesi ve veri akışı sağlanması için tasarlanmış platformdur. ActiveX, OLE ve bu gün daha yaygın olan COM temelde bu mantık üzerinden çalışır. AutoCAD ile çalışırken bir kelime işlemciye veya bir hesap tablosuna bilgi aktarmanız gerektiğinde OLE yardıma koşar.
Insert menüsünden OLE Object’i seçin. Aşağıdakine benzer bir liste içeren bir iletişim penceresi ekrana gelir. Liste adının ise Nesne Türü olduğuna dikkat ediniz. Oysa listede Windows ortamında kullandığımız çeşitli uygulama isimleri ile başlayan ifadeler mevcut. Bunlar o uygulama ile AutoCAD arasında iletişimi sağlayacak nesnelerdir.

Fig.1
Şimdi bu nesnelerin iki program arasında alış-verişi nasıl sağladığını inceleyelim.

Fig.2
Şekilde mavi ile gösterileni istemci (Word,Excel..) ve bordo ile gösterilen sunucu (AutoCAD..) arasında geçen proses özetlenmiştir. Bu sayede AutoCAD çizim sayfanızdaki bir çizginin özelliklerine (renk, kalınlık..), MS Word dosyasından ulaşmak mümkün olacaktır. Bunun yanında programlar arasında iletişimi sağlayan ActiveX sayesinde uygulamalar arası ortak projeler geliştirilebilir. Örneğin bir veri tabanı dosyasını AutoCAD ile ilişkilendirdiniz ve çiziminizdeki nesneler hakkındaki bir takım bilgileri veritabanına eklediniz. Böylece çok daha esnek kullanılabilir bir şekilde çiziminize ait verileri depolamış olursunuz. Bu olaya uygulamaların birbirlerinin özelliklerinden faydalanmaları olarak da bakılabilir. Çünkü her uygulama tüm işlerinizi gerçekleştirecek güçte değildir. Word bir kelime işlemci fakat AutoCAD bir bilgisayar destekli tasarım paketidir. AutoCAD ile çalışırken Word’e ihtiyaç duyabilirsiniz. Aynı şekilde Word ile çalışırken de bir AutoCAD çizimine ihtiyaç duyabilirsiniz. OLE bu ihtiyaca cevap verebilmek amacıyla doğmuş bir platformdur.
Anlatılanları pratiğe dökmek ve konuyu daha iyi kavrayabilmek için basit bir örnek ile devam edelim.
Bir MS Word dosyası açın ve Araçlar menüsünden Makro ve Vusial Basic Düzenleyicisi’ni seçin. Düzenleyici açıldığında resimdeki işlemleri gerçekleştirin ve Projeye bir kullanıcı formu (UserForm) ekleyin.

Fig.3
Formda gerekli düzenlemeleri yaparak aşağıdaki gibi tasarlayın.

Fig.4
Şimdi sıra geldi kontrol (Buton) olaylarına kod eklemeye.
Butonun Click olayına aşağıdaki gibi kodu ekleyin.

Fig.5
F5 tuşuna basın veya aşağıdaki gibi menüden Run komutunu başlatın.

Fig.6
Formdaki butona tıklayıp ve bir süre bekledikten sonra yeni bir AutoCAD çiziminin başlatıldığını görürsünüz.
Şimdi yazdığımız kodun ne anlama geldiğini inceleyelim.
set Acad = CreateObject("AutoCAD.Application")
Acad adında bir AutoCAD.Application nesnesi oluşturuluyor. Application nesnesi AutoCAD nesne hiyerarşisinde zirvede bulunur. Uygulama nesnesidir.
Acad.visible=True
Acad adındaki nesneyi biraz önce oluşturmuştuk ve şimdi bu nesneni özelliklerinde düzenleme yapıyor ve görünebilirlik özelliğini açık hale getiriyoruz.
Anlattığım basit örnekten yola çıkarak neler yapılabileceğini hayal edebilirsiniz. Word dosyasından formu çalıştırarak bir çizimdeki çizgi renklerini yazdırabilirsiniz. Veya nesne sayısını otomatik bir şekilde Word dosyasına eklenmesini sağlayabilirsiniz. Bu işlemler aslında manuel olarak da yapılabilir. Ancak insan eli değmeden yapılan işlere kısaca otomasyon dediğimiz için OLE de bir otomasyondur ve manuel olarak yapılacak bazı işleri kolaylaştırır.
Yazının devamında görüşmek üzere…
Benzer Yazılar



(5 votes, average: 4.8 out of 5)
22 March 2007, Thursday 13:02
Merhaba,
Vba ağırlıklı yazılarınızı merakla bekliyorum,
özellikle direk AutoCAD de kullanılan VBA örneklerine
ağırlık verirseniz sevinirim.
Kolay gelsin.