| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. | | |  | KISTERS 3DViewStation: Schnelligkeit und Präzision in dem neuen JT-Importer, eine Pressemitteilung
|
Autor
|
Thema: Copy/Paste von Körpern durch Selektion in einer Baugruppe (846 mal gelesen)
|
MuadDib Mitglied
 Beiträge: 5 Registriert: 04.04.2003
|
erstellt am: 04. Apr. 2003 16:38 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich schreibe gerade ein Makro, das einen vom Benutzer ausgewählten Körper kopiert und im selben Part einfügt, wobei der ursprüngliche Körper ins Noshow geschickt wird. Solange in CATIA nur ein Part-Dokument geöffnet ist, funktioniert das ganze ohne Probleme, nicht aber, wenn dieses sich irgendwo in der Baugruppe befindet. Diese ist beliebig kompliziert und ich kenne auch nicht den Namen bzw. die Lage des Parts, um diesen über CATIA.Documents.Item() zu erreichen. Gibt es eine Möglichkeit das Part, in dem eine Selektion vorgenommen wurde aktiv zu setzen? Worauf bezieht sich überhaupt die Methode CATIA.ActiveDocument (scheinbar nicht auf das gerade aktive Teil, das blau unterlegt wird)? Würde mich über jenen Hinweis freuen Gruss Dietmar Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stoffel Mitglied Student
 
 Beiträge: 322 Registriert: 09.10.2002 R6/V2010
|
erstellt am: 04. Apr. 2003 18:20 <-- editieren / zitieren --> Unities abgeben:          Nur für MuadDib
Moin! Mal wieder die Frage nach den Aktivierung von einzelnen Teilen/Produkten. Auch wenn sie öfters gestellt wird, wird es, meiner Meinung nach, keine Antwort dafür geben.... Die Methode ActiveDocument bezieht sich auf das Dokument, welchen Gerade aktiv in CATIA ist. Das ist aber nur relevant, wenn mehrere Dateien geöffnet sind.... (falls das falsch ist, bitte ich um Berichtigung) Soviel für heute Stoffel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Steffen Hohmann Mitglied
 
 Beiträge: 446 Registriert: 06.03.2002
|
erstellt am: 09. Apr. 2003 17:52 <-- editieren / zitieren --> Unities abgeben:          Nur für MuadDib
Hallo Dietmar, das Dokument, in dem der Körper ausgewählt wurde, erhältst Du über Selection.Item(XXX).Value.Parent.Parent.Parent (siehe unten) Das aktivieren eines Parts innerhalb des Produktes ist dabei nicht notwendig. Anbei das komplette Beispiel als CATScript-Code. Sub CATMain() Dim oPartDoc As PartDocument Dim oProdDoc As ProductDocument Dim oSel As Object Dim SelFilter(0) Set oProdDoc = CATIA.ActiveDocument SelFilter(0) = "Body" oProdDoc.Selection.SelectElement SelFilter, "Körper auswählen", False Set oSel = oProdDoc.Selection.Item(1).Value Set oPartDoc = oSel.Parent.Parent.Parent oProdDoc.Selection.Add oSel oProdDoc.Selection.Copy oProdDoc.Selection.VisProperties.SetShow catVisPropertyNoShowAttr oProdDoc.Selection.Add oPartDoc.Part.Bodies oProdDoc.Selection.Paste oProdDoc.Selection.Clear oPartDoc.Part.Update End Sub Gruss Steffen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |