Egitim 2

Eğitim-2 içeriğine genel bakış:

→ Export objesi (bkz: Export Objesi)

→ Objeler arası iletişim (bkz: Objeler Arası Iletişimbkz: Export Objesi, bkz: Private Objesi

→ Özel obje ve fonksiyonlardan bazıları (bkz: toglobal(Obje), bkz: linel(line), bkz: online(line,Uzaklık), bkz: onliner(line,GöreceliUzaklık) 

Bu eğitimde farklı kütüphane objeleri olarak oluşturulan, küp şeklindeki 3 adet "Volume" objesi ile aşağıdaki görüntünün elde edilme aşamaları anlatılmaktadır. Ayrıca bkzObjeler Arası Iletişim


"cube1" objesinin oluşturulması:

  1. Objeler arası iletişim OpenBrIM platformunda tanımlanan parametrik köprü objeleri açısından neden önemlidir?
  2. Bir objenin uzaydaki konumu nasıl tanımlanır? (Örnekte tanımlanan StartingPoint parametresinin değeri, V= "[0,0,0]" listesi şeklinde, sırasıyla X, Y ve Z noktalarını temsil etmektedir.)
  3. Bir objenin renk ve şeffaflık ayarları nasıl yapılır? (bkz: 3D Geometrik Objeler)
  4. Bir listenin (Örn: V="[0,0,0]")  bileşenlerine nasıl erişilir ve seslenilir? Ne zaman listelere ihtiyaç duyarız?
  5. Geometrik objelerin birbirinden veri okuyabilmesi için neye ihtiyaç duyulur? Referans çizgisi kavramı: "refline"
  6. Bir objenin global koordinatlarını hesaplama ve listeleme (bkz: toglobal(Obje))
  7. "Refline" objesinin orta nokta koordinatlarının hesaplanması, Metod 1 (bkz: onliner(line,GöreceliUzaklık))
  8. Bir objenin Role= "Input" olmayan, ancak App'te başka objeler tarafından tanınmasına ihtiyaç olan parametrelerini App'te başka objelerin kullanımına açmak (bkz: Export Objesi)

"cube2" objesinin oluşturulması:

  1. Bir objenin (cube2) başka bir obje (cube1) ile ilişkilendirilirken "cube2" objesi tarafından ihtiyaç duyulan "cube1" parametrelerini kullanıcıdan istemek yerine, bu parametreler "cube2" objesi içinde "cube1" ile ilişki kurulur (bkz: Private Objesi)
  2. TransAlignRule= "Right" parametresi ne işe yarar?
  3. Bir çizginin uzunluğu nasıl hesaplanır? (bkz: linel(line))
  4. "Refline" objesinin orta nokta koordinatlarının hesaplanması, Metod 2 (bkz: online(line,Uzaklık))

"cube3" objesinin oluşturulması:

  1. "cube2" objesi içinde "export"lanan parametreleri "Private" ile "cube3" objesinin içinde ilişkilendirmek yerine, bu parametreleri "cube3" içinde Role= "Input" olarak da tanımlayabilirdik. Ancak bu yaklaşımda, her yeni durum için bu input parametrelerin değiştirilmesi gerekirdi. Bu yaklaşımın, OpenBrIM'de kurgulanan parametrik akıllı köprü mantığına uygun olmadığını anlayalım. 
  2. Bir objeyi başka bir obje içinde i) "Private" ile çağırmak yerine ii) objenin kendisini çağırmak arasında ne fark vardır? Her iki durumda App'te elde edilen davranış nedir?
  3. App'te bir objeyi oluşturmak için başka bir ön objenin gerekliliği kullanıcı arayüzünde nasıl belirtilir? (bkz: Paraminfo Objesi)
  4. App'te oluşturulmak için kendinden önce tanımlanması gereken bir objeye ihtiyaç duyan bir objeden App içinde birden fazla sayıda tanımlanırsa ne olur? Obje Library kodundaki kurgu nasıl olmalıdır?
  5. Bir obje, başka bir objenin içinde i) "Private" olarak ya da ii) objenin kendisi olarak doğrudan çağrılarak tanımlandıktan sonra değişikliğe uğrarsa, değişikliğe uğrayan objenin güncel hali, -çağrılma şekline bağlı olarak- i) "Private" ya da ii) objenin kendisi şeklinde tekrar çağrılmalıdır.