Autor
|
Thema: SelectElement2 - Element von Part zu Part kopieren (1546 mal gelesen)
|
el_lude Mitglied
Beiträge: 36 Registriert: 03.12.2003 V5R19SP9
|
erstellt am: 09. Mai. 2012 09:52 <-- editieren / zitieren --> Unities abgeben:
Und hier nun meine zweite Sorge. Produkt1 |___Produkt2 |_____Part1 |___Produkt3 |_____Part2 Im Fenster ist ein Produkt geöffnet. Ein Part wird ausgewählt und als part1 definiert. Mit SelectElement2 möchte ich aus Part2 eine Kurve kopieren, um sie dann mit Pastespecial CATPrtResult in das geometrische Set "Hilfsgeometrie" in Part1 einzufügen. Das copy bringt mir die "Error copying data"-Fehlermeldung: Selected Element(s) not allowed for this operation. Veröffentlicht ist die Kurve schon, da würde Catia erst beim PasteSpecial meckern. Irgendwie wars doch so, dass Part2 aktiv sein muss, damit ich die Kurve kopieren kann. Muss ich eine extra Selektion definieren? Ich weiß grad gar nicht weiter. Das schlimmste ist, am Montag gings schonmal, aber ich kann mich nicht erinnern wie ichs gemacht habe. Code:
Set Doc1 = CATIA.ActiveDocument Set Sel1 = CATIA.ActiveDocument.Selection Sel1.Search ("'Part Design'.Part, in") Set part1 = Sel1.Item(1).Value Dim InputOT1(0) InputOT1(0) = "MonoDim" Sel1.Clear Selected1 = Sel1.SelectElement2(InputOT1, "Kurve auswählen!", False) Sel1.Copy '-- hier kommt die Fehlermeldung Sel1.Add part1.HybridBodies.Item("Hilfsgeometrie") Sel1.PasteSpecial ("CATPrtResult")
Ich freu mich über jeden Hinweis! Dank und Gruß Markus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThomasJay Mitglied Dipl-Ing
Beiträge: 159 Registriert: 19.04.2011 CATIA V5 R19
|
erstellt am: 09. Mai. 2012 10:13 <-- editieren / zitieren --> Unities abgeben: Nur für el_lude
|
el_lude Mitglied
Beiträge: 36 Registriert: 03.12.2003 V5R19SP9
|
erstellt am: 09. Mai. 2012 10:32 <-- editieren / zitieren --> Unities abgeben:
Es hat ja schonmal funktioniert. Also muss es ja irgendwie gehen. Die Variante von einem Fenster ins andere ist als Option in meinem Makro schon eingebaut (SelectElement4). Wenn ich das, was ich vorhabe, von Hand mache (Auswahl der Kurve im Baum, kopieren und pastespecial ins aktive Part) funktioniert mein Plan. Trotzdem danke! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThomasJay Mitglied Dipl-Ing
Beiträge: 159 Registriert: 19.04.2011 CATIA V5 R19
|
erstellt am: 09. Mai. 2012 11:11 <-- editieren / zitieren --> Unities abgeben: Nur für el_lude
Welches Dokument ist denn zu Beginn aktiv bzw. ist das Part, in dem du den Copy-Vorgang machen möchtest aktiv? Es könnte sein, dass du die selection neu definieren musst, wenn du zuerst im Produkt bist und sie dort zur Auswahl des Parts benötigst. Anschließend möchtest du ja auf part-ebene selektieren. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
el_lude Mitglied
Beiträge: 36 Registriert: 03.12.2003 V5R19SP9
|
erstellt am: 09. Mai. 2012 12:52 <-- editieren / zitieren --> Unities abgeben:
Ja wie gesagt, doc1 ist mein geöffnetes Produkt im Fenster --> die Selektion bezieht sich aufs Dokument Aktiv ist Part 1, dort soll dann auch in "Hilfsgeometrie" die Kurve aus part2 eingefügt werden. ich denke auch, dass ich für part1 eine neue Selektion erzeugen muss, weiß aber nicht wie, da Selektionen doch Objekte in Dokumenten sind. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThomasJay Mitglied Dipl-Ing
Beiträge: 159 Registriert: 19.04.2011 CATIA V5 R19
|
erstellt am: 09. Mai. 2012 13:12 <-- editieren / zitieren --> Unities abgeben: Nur für el_lude
Ich mache es wie folgt: part1 öffnen selektion1 definieren (CATIA.activedocument.selection) zu kopierendes Element zur selektion1 hinzufügen part2 öffnen selektion2 definieren (wieder CATIA.activedocument.selection, da das aktive ja gewechselt hat) selektion des GeoSets in das ich kopieren möchte
Code: selektion2.PasteSpecial "CATPrtResult"
müsste auch funktionieren wenn man die fenster nicht extra öffnet. du machst also eine Selektion eines Elements und verschiebst es mit dem Copy-Befelhl in die Zwischenablage. Dann definierst du eine neue selektion, da du ja in einem anderen dokument bist. mit dieser selektion gibst du an, wo du das element aus der zwischenablage hin haben möchtest Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
el_lude Mitglied
Beiträge: 36 Registriert: 03.12.2003 V5R19SP9
|
erstellt am: 09. Mai. 2012 13:26 <-- editieren / zitieren --> Unities abgeben:
|
ThomasJay Mitglied Dipl-Ing
Beiträge: 159 Registriert: 19.04.2011 CATIA V5 R19
|
erstellt am: 09. Mai. 2012 18:42 <-- editieren / zitieren --> Unities abgeben: Nur für el_lude
|
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 09. Mai. 2012 20:33 <-- editieren / zitieren --> Unities abgeben: Nur für el_lude
|