Autor
|
Thema: Volumenkörper nur in erster Ebene suchen und selektieren (677 mal gelesen)
|
Julenk0rt Mitglied Produktentwickler / Konstrukteur
Beiträge: 63 Registriert: 05.03.2010 Win10 Catia V5-6 Release 2016 SP5
|
erstellt am: 23. Jul. 2014 12:28 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, folgendes Problem: Im Laufe meines Makros (CATVBA) führe ich eine Suche aus, in der alle sichtbaren Volumenkörper eines Parts gesucht, selektiert und in ein neues Part kopiert werden (without link). Nun möchte ich allerdings nur die Volumenkörper der "1. Ebene des Strukturbaums" auswählen und kopieren. Aktuell werden wirklich alle Volumenkörper gefunden und kopiert, also beispielsweise auch Beschnittkörper, die sich über boolsche Operationen innerhalb eines anderen Volumenkörpers befinden (z.B. Abzugskörper für Bohrungen, usw.) Gibt es eine Möglichkeit, die Suche nach Volumenkörpern, oder auch das Zählen der Körper auf die "1. Ebene" im Strukturbaum zu begrenzen? Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 23. Jul. 2014 12:49 <-- editieren / zitieren --> Unities abgeben: Nur für Julenk0rt
Servus Du könntest über eine Schleife über die Selektion mit der Methode "InBooleanOperation" prüfen ob der Körper "verboolet" ist. Wenn ja, aus der Selektion entfernen (Tipp: Selektion von hinten nach vorne abarbeiten) Gruß Bernd PS: hier ein Beispiel ------------------ Warum einfach, wenn es auch kompliziert geht. [Diese Nachricht wurde von bgrittmann am 23. Jul. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Julenk0rt Mitglied Produktentwickler / Konstrukteur
Beiträge: 63 Registriert: 05.03.2010 Win10 Catia V5-6 Release 2016 SP5
|
erstellt am: 23. Jul. 2014 14:51 <-- editieren / zitieren --> Unities abgeben:
Hallo, eine Schleife würde natürlich "viel" Zeit kosten. Die Suche ist so schön schnell. Aber in dem Thread den du als Beispiel gepostet hat, besteht ja genau das umgekehrte Problem, nämlich, dass die Methode .Count nur die Körper der ersten Ebene zählt. Das wäre ja eigentlich genau das, was ich brauche... Wundert mich also etwas... [Diese Nachricht wurde von Julenk0rt am 23. Jul. 2014 editiert.] [Diese Nachricht wurde von Julenk0rt am 23. Jul. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 23. Jul. 2014 15:00 <-- editieren / zitieren --> Unities abgeben: Nur für Julenk0rt
Servus Das "Problem" vom anderen Thread, dass über die Bodies-Collection nur die "direkten" Bodies ansprechbar sind kann ich nicht nachvollziehen. In meinem Kurztest werden alle gezählt/zurückgeliefert. IMHO musst du wohl alle Selektieren und dann aussortieren. Gruß Bernd EDIT: Oder ggf Schleife über alle Körper (Bodies-Collection), mit "InBooleanOperation" prüfen, wenn nein der Selektion hinzufügen ------------------ Warum einfach, wenn es auch kompliziert geht. [Diese Nachricht wurde von bgrittmann am 23. Jul. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|