Dosya Oluşturma, Açma ve Kaydetme

Tekrar hoşgeldiniz! Bu, bu blog yazısı serisinin 2. Bölümüdür ve burada 3DEXPERIENCE (3DX) veritabanı içeriğiyle nasıl çalışılacağını açıklayacağım.

Öncelikle Dassault, 3DX'ten bahsederken “dosya” kelimesini kullanmayı sevmiyor. Sizin de çok iyi bildiğiniz gibi, tüm 3DX içeriği DB'de depolanır ve bu DB'deki her bir öğeye artık “PLM Varlığı” adı verilir. (Unutmayın, sonuçta DB'deki her öğe için sunucunun bir yerinde saklanan bir dosya vardır.) Yine de bundan sonra o DB'deki her öğe için “PLM varlığı” veya “PLM nesnesi” kelimelerini kullanacağız. .

Bu muhtemelen V5 ve 3DX arasındaki en büyük farklardan biridir.

Belge tabanlı ve DB tabanlı

V5 belge tabanlıdır. V5'te ekranınızda bir model gördüğünüzde, bu iki şeyle temsil edilir; Belge nesnesi ve Pencere nesnesi. V5'te bir modeli açtığınızda veya kaydettiğinizde, CATIA aslında bir dosyayı okur veya kaydeder.

Şekil 1

3DX ekranında gördüğünüz şey de iki şeyle temsil edilir, ancak artık bunlar Editör nesnesi ve Pencere nesnesidir. Window nesnesi, modeli ekranda görüntüleyen V5'teki ile aynı işlevi gerçekleştirir. Ancak Editör nesnesinin rolü, modelin içeriğinin “denetleyicisi” rolündedir. Yani mevcut uygulamayı tutar ve uygulamadan başlatılabilecek tüm komutların listesini tutar.

Editörün bir özelliği var Aktif Nesne, ekranda gördüğünüz nesnedir. Aktif nesneyi ele geçirmek için VBA'da aşağıdaki komutları kullanabilir ve oradan onunla çalışabilirsiniz.

01: Dim oActiveObj As AnyObject

02: oActiveObj'yi = CATIA.ActiveEditor.ActiveObject olarak ayarlayın

İçerik nesnesi, veritabanındaki bir meta veri kartı ve bir depolama dosyasıyla temsil edilen bir PLM Varlığına karşılık gelir. Bu, 3DX oturumu ile veritabanındaki dosyalar arasında “ekstra bir katman” oluşturur. Dosyayı almak için sistem öncelikle dosyanın tam olarak nerede bulunduğunu söyleyen meta verileri okur.

şekil 2

3DX'te modeli yalnızca “açamaz” veya “kaydedemezsiniz”. Bunu sizin için yapması için bir 3DX “hizmeti” istemeniz gerekir.

Serinin 3. bölümünde 3DX “hizmetlerini” ayrıntılı olarak tartışacağım, bu yüzden şimdilik konuyu basit tutacağız.

Veritabanından Arama ve Açma

Bir modeli 3DX oturumuna getirmek için önce modeli aramanız (SearchService), ardından açmanız (PLMOpenService) gerekir. VBA kodu şuna benzer:

' SearchService nesnesini alın ve arama sorgusu oluşturun

01: Dim oSearchService As SearchService

02: oSearchService = CATIA.GetSessionService(“Arama”) olarak ayarlayın

03: Dim oDBVeritabanı Araması Olarak Arama

04: oDBSearch'ü ayarlayın = oSearchService.DatabaseSearch

05: oDBSearch.BaseType = “VPMReference“ ', bir FizikselÜrün arar

06: oDBSearch.AddEasyCriteria “V_Name”, “” ' Başlığı kullanarak arama yapar

' Aramayı başlat

07: oArama Hizmeti.Arama

' Bulunan varlıkların listesini alın

08: PLMentities Olarak Dim cPLMentities

09: cPLMEntities = oDBSearch.Results değerini ayarlayın

' PLMOpen hizmetini alın ve bulunan ilk varlığı açın

10: Dim oPLMOpenService As PLMOpenService

11: oPLMOpenService'i ayarlayın = CATIA.GetSessionService(“PLMOpenService”)

12: Dim oEditör Editör Olarak

13: oPLMOpenService.PLMOpen cPLMEntities.Item(1), oEditör

DB'ye kaydetme

Geçerli modeli DB'ye kaydetmek için şunu kullanmanız gerekir: PLMPropagate Hizmeti. VBA kodu şuna benzer:

' PropagateService nesnesini alın

01: Dim oSaveService As PLMPropagateService

02: oSaveService = CATIA.GetSessionService(“PLMPropagateService”) olarak ayarlayın

' DB'ye kaydet (yalnızca Aktif Düzenleyicinin içeriğini kaydeder!)

03: oSaveService.PLMPropagate

Yeni İçerik Oluşturma

Artık yeni içerik oluşturmak için başka bir Hizmeti kullanmanız gerekecek: PLMYeniHizmet.

01: Dim oServ As PLMNewService

02: oServ = CATIA.GetSessionService(“PLMNewService”) olarak ayarlayın

03: Dim oEditör Editör Olarak

04: oServ.PLMCreate “”, oEditör

dize aşağıdaki değerlere sahip olabilir:

  • “Çizim”: Çizim Oluşturur
  • “3DShape”: 3 boyutlu bir şekil oluşturur
  • “3DPart”: 3B Parça Oluşturur
  • “VPMReferansı”: Fiziksel Bir Ürün Yaratır

İşte kötü haber; bir makrodan yeni bir 3D Parça veya Fiziksel Ürün oluşturmak, VMX veya E70 gibi özel bir lisans gerektirir. Lisans olmadan yalnızca Çizim veya 3B Şekil oluşturabilirsiniz. Tipik olarak çoğu şirket bu lisansa sahip değildir; bu şu anlama gelir: Komut dosyası kullanarak yeni bir 3B Parça veya Fiziksel Ürün oluşturabilmeyi beklemeyin!