Bir
"catvba" dosyası birden çok macroyu içerebilir.
Bu vba dosyası bir macro kütüphanesidir (macro library) CATIA
içine yeni bir macro kütüphanesi ilave etmek için bu penceredeki
"Maco Libraries" butonu kullanılır.
Macro Libraries Penceresi
Bu
pencerede bulunan "Add existing library" seçeneği
ile var olan bir vba dosyası CATIA içine dahil edilebilir.
Macrolar Edit ya da Ceate butonu ile açılan VBA geliştirme
ortamında yazılır.
VBA geliştirme ortamı
Örnek bir makro - Koordinat Alma
İlgili
dosyaları indirmek için tıklayınız: koordinat.zip
(41KB)
CATIA
içine VBA ile kod yazılmasına ilişkin inceleyeceğimiz örneklerden
ilki, ekran üzerinde seçilen noktanın x,y,z eksenlerindeki
koordinatlarını alan ve gerektiğinde bu koordinata bir nokta
ekleyen bir macrodur.
Koordinat alma macrosu
Bu
macro arka planda sürekli aktif olarak kaldığı için, hızlı
koordinat değerlerini alma ve noktalama işlemlerinde kullanıcıya
önemli kazançlar sunabilir. Boşluk dışında her nokta seçilebilir.
Macronun
kullanımı, ilgili noktanın seçilip, formun üzerine sol ya
da sağ mouse tuşuna basılması şeklindedir. Sol tuşa basıldığında
form üzerindeki textbox'lara koordinat değeri gelir. Sağ tuşa
basıldığında textbox'lara hem koordinat değeri gelir, hem
de seçilen yerde nokta oluşturulur.
Başlangıç
kodunun oluşturulması:
CATIA'da
yeni bir makro oluşturulduğunda (Create) ilgili vba dosyasına
bir modül ilave edilir. Macroda bu modül "koordinat_alma"
ismindedir. Siz daha sonra, hangi formu çağırmak isterseniz
bu formun show metodunu kullanarak ekrana getirirsiniz.
secim_koord_frm.Show
vbModeless
Bu komur satırı secim_koord_frm isimli formu ekrana getirmektedir.
Bu form ise bizim KOORDINAT isimli (caption) formumuzdur.
Satır sonunda bulunan vbModeless ifadesi, formumuz aktifken
CATIA'nin da kullanılabilmesini sağlayan bir ifadedir ve bu
makro için gereklidir.
Formun
oluşturulması:
Form
dört adet label (X,Y,Z ve Tip), dört adet textbox ve görünmeyen
(transparant) ve en üstte yer alan bir CommandButton'dan oluşur.
Bu commandbutton formun boş bir yerine tıklama zorluğunu ortadan
kaldırmak için konulmuştur.
Form
kodunun oluşturulması:
Form
üzerinde yapılan işlemler için (events) belli fonksiyonların
ya da sub'ların cağrılması gerekir. Bu fonksiyon ya da sub'ların
yapacağı işlemler, bizim programımızın akışını belirler.
Form kodumuzda toplam üç adet sub bulunmaktadır.
Private
Sub UserForm_Initialize()
...
...
End Sub
Bu sub macromuz ilk çalıştırıldığında devreye girer ve CATIA'nın
çalışıp çalışmadığını kontrol eder.
Private
Sub CommandButton1_Click()
...
...
End Sub
Bu sub en üstte bulunan gizli (transparant) commandbutton'nuna
tıkladığınızda devreye girer ve bu sub CATIA'da seçilen noktanın
koordinatlarını textbox'lar üzerine taşır.
Private Sub CommandButton1_MouseDown(ByVal
Button As Integer, ByVal Shift As Integer, ByVal X As Single,
ByVal Y As Single)
...
...
End Sub
Bu sub gizli commandbutton üzerine sağ mouse tuşu ile tıklandığında
devreye girer ve texboxlar üzerine seçilen noktanın koordinatların
yazdıktan sonra, seçilen yerde bir de nokta oluşturur.
|