Hallo,
wenn du einen Body kopierst wird dieser immer im Part eingefügt werden und nicht in einem anderen Body.
Wenn du hingegen den Inhalt eines Bodies kopierts, kann du diesen in einen anderen Body einfügen.
Natürlich kannst du den neu eingefügten Body umbenennen.
Grundsätzlich: es gibt nur eine Selection, d.h. ein Dim reicht aus.
Zum umbenennen kannst du entwerder den sich noch in der Selektion befindenden Body selbst verwenden, oder den neu eingefügten im Part aufrufen und umbenennen.
Bsp.: Product mit 2 Parts, der erste Body aus dem ersten Part wird ins zweite kopiert und soll dort umbenannt.
Language="VBSCRIPT"
Sub CATMain()
Set oRoot = Catia.ActiveDocument
Set oSel = oRoot.Selection
Set oPart1 = oRoot.Product.Products.Item(1).Referenceproduct.Parent.Part
Set oPart2 = oRoot.Product.Products.Item(2).Referenceproduct.Parent.Part
Set oRefBody = oPart1.Bodies.Item(1)
oSel.Clear
oSel.Add(oRefBody)
oSel.Copy
oSel.Clear
oSel.Add(oPart2.Bodies)
oSel.PasteSpecial "CATPrtResultWithOutLink"
oSel.Item(1).Value.Name = "Body über Selektion umbenannt"
Msgbox "Der Body befindet sich noch in der Selektion ...",64
oSel.Clear
Msgbox "... und wird dort umbenannt...",64
oPart2.Update
oPart2.Bodies.Item(oPart2.Bodies.Count).Name = "Body über Zielpart umbenannt"
End Sub
Ich hoffe das veranschaulicht das Prinzip.
Gruß
------------------
tomtom1972
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP