| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. |
| |
 | KISTERS 3DViewStation: Germar Nikol - Der Visionär hinter der Erfolgsgeschichte, eine Pressemitteilung
|
Autor
|
Thema: Abfrage, ob PartBody leer ist (in Produkt-Struktur) (900 mal gelesen)
|
V5Playaz Mitglied Dipl.-Ing (BA)
 
 Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 18. Nov. 2008 11:50 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich möchte in einem Produkt rekursiv alle Parts durchlaufen. Soweit kein Problem. Nun möchte ich aber in jedem Part prüfen, ob ein bestimmtes PartBody leer ist. Dieses PartBody ist jedoch in einer Unterstruktur vorhanden. Hat jemand eine Idee wie ich dies am besten prüfen kann, bzw wie ich dieses PartBody am besten anspreche. Zur Struktur: Produkt |_Part |_PartBody1 |_Assemble1 |_PartBody2 |_Assemble2 |_PartBody3 PartBody3 möchte ich überprüfen. Grüße Dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ogard1 Mitglied Verfahrenstechniker
 
 Beiträge: 442 Registriert: 12.09.2004 R19 SP2
|
erstellt am: 18. Nov. 2008 12:25 <-- editieren / zitieren --> Unities abgeben:          Nur für V5Playaz
|
V5Playaz Mitglied Dipl.-Ing (BA)
 
 Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 18. Nov. 2008 16:09 <-- editieren / zitieren --> Unities abgeben:         
Hallo, den Beitrag hatte ich vorher schon entdeckt, jedoch bezieht sich dass nur auf ein Part. Ich hingegen such aber eine Lösung für eine Produkt-Struktur. Mittlerweile habe ich eine Lösung gefunden. Ich komme über selection.search zum Ergebnis... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
QUESTMan Mitglied

 Beiträge: 12 Registriert: 21.05.2008
|
erstellt am: 20. Nov. 2008 10:32 <-- editieren / zitieren --> Unities abgeben:          Nur für V5Playaz
Hallöchen V5Playaz, stehe gerade vor dem gleichen Problem - wie genau funktioniert das mit selection.search? Ich bekomme da nur Fehler... Hast Du vielleicht einen Codeschnipsel für mich? Danke, Matthias
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
V5Playaz Mitglied Dipl.-Ing (BA)
 
 Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 20. Nov. 2008 12:39 <-- editieren / zitieren --> Unities abgeben:         
Hallo Matthias, also der Weg über die Selection hat sich leider als nicht perfekt und langsam bewiesen. Ich gehe nun doch den Weg, indem ich die PartBodys direkt anspreche. Code: Set documents1 = CATIA.Documents Set partDocument1 = documents1.Item(Dateiname) 'Dateiname des Parts (in Product-Struktur) Set part1 = partDocument1.part Set bodies1 = part1.bodies Set body1 = bodies1.Item("Body_Fraesen") Set shapes1 = body1.shapes Set assemble1 = shapes1.Item("Body_Schlichten") If part1.bodies.Item(FraesBearbeitung(ii)).shapes.Count > o And part1.bodies.Item(FraesBearbeitung(ii)).sketches.Count > 0 Then part1.Inactivate assemble1 part1.Update end if
So funktioniert es bei mir nun Problemlos und vor allem schneller als über die Selection. Grüße Dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
QUESTMan Mitglied

 Beiträge: 12 Registriert: 21.05.2008
|
erstellt am: 20. Nov. 2008 15:40 <-- editieren / zitieren --> Unities abgeben:          Nur für V5Playaz
Hallo Dominik, danke für das Beispiel. Etwas ähnliches hatte ich in der Zwischenzeit auch ausprobiert. Mein größtes Problem liegt jetzt darin, den Dateinamen des Parts herauszufinden. Über die Oberfläche ist das ja kein Problem, aber wie komme ich da automatisiert ran? Ich habe speziell das Problem, dass ich für alle Parts in der Produktstruktur automatisiert eine BBox erstellen möchte. Ich laufe rekursiv durch den Baum, das funktioniert bei mir allerdings bisher nur bis auf Produktebene. Die Parts bekomme ich nur, wenn ich den Dateinamen kenne Über selection müsste ich doch eigentlich auch die Parts selektieren können, oder? Ich bekomme das nur mit Bodies hin. Problem hierbei: Ich selektiere immer alle bodies in allen Produkten... Vielen Dank für die Hilfe, Matthias
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
V5Playaz Mitglied Dipl.-Ing (BA)
 
 Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 20. Nov. 2008 16:10 <-- editieren / zitieren --> Unities abgeben:         
Hallo Matthias, Die oProducts bekomme ich aus der rekursiven Schleife Pfadname = oProducts.Item(i).GetMasterShapeRepresentationPathName() Den Pfadnamen kann man dann noch aufbereiten damit nur der Dateiname übrig bleibt. Über die Selection kommt man an so ziemlich alles ran: selection.Search "Name='PART_X';All"
Wenn du mehrere Selections hintereinander verschachtelst dann kannst du in der Struktur bis zu den Bodies gehen. Aber dein Programm wird dadurch langsam. Besser die Bodies direkt ansprechen. Grüße Dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
QUESTMan Mitglied

 Beiträge: 12 Registriert: 21.05.2008
|
erstellt am: 20. Nov. 2008 18:07 <-- editieren / zitieren --> Unities abgeben:          Nur für V5Playaz
|