Hallo Community,
ich vertrete eben mal den Patrick. Also das mit der KT1 Lizenz ist bekannt und die wird auch benutzt. Das Problem liegt an der Ausrichtung der Elemente (Linien und Flächen), die wir über JOIN oder INVERSE Elemente bewerkstelligen. Setze ich die Powercopy manuell ein, werden diese Elemente auch übernommen. Setze ich die Powercopy per Makro ein kann ich die Elemente selektieren, sie werden bei der Instanzierung aber offensichtlich nicht an die Powercopy übergeben. Hier kurz ein Auszug aus dem Code:
Variablendeclaration:
Public opt as AnyObject 
Selection:
    If FixType = "DHs" Or FixType = "DHd" Then
        What4(0) = "Line"
        What4(1) = "Plane"
        What4(2) = "Sketch"
        What4(3) = "HybridShapeInverse"
        What4(4) = "HybridShapeAssemble"
        Set UserSel4 = CATIA.ActiveDocument.Selection
        UserSel4.Clear
        If ShortCut = False Then     'Optionalen Text einschalten wenn ohne ShortCut
            MsgBox ("Entformungsrichtung des Schiebers auswählen [als Linie, Ebene, Sketch, Invers oder Join]"), vbOKOnly
        End If
        US4 = UserSel4.SelectElement2(What4, "Entformungsrichtung des Schiebers auswählen [als Linie, Sketch, Plane, Join, Inverse]", False)
        If US4 = "Normal" Then
            Set opt = UserSel4.Item(1).Value
        Else
            MsgBox ("Bitte Linie, Ebene, Sketch, Invers oder Join auswählen!"), vbCritical
        End If
        UserSel4.Clear
    End If
 
Instanzierung:
Dim factory As InstanceFactory
    Set factory = PartDest.GetCustomerFactory("InstanceFactory")
    factory.EndInstanceFactory      'nur zur Sicherheit...
    MsgBox ("Diese Powercopy wird eingesetzt: " & Path & PCreq & ".CATPart")
    factory.EndInstanceFactory       'nur zur Sicherheit
    factory.BeginInstanceFactory "PowerCopy.1", Path & PCreq & ".CATPart"
    factory.BeginInstantiate
    factory.PutInputData "OPT", opt                                         ‘### Linie
    Dim Instance
    Set Instance = factory.Instantiate
    factory.EndInstantiate
    factory.EndInstanceFactory
Nimmt man eine normale Linie oder ein dummes Element funktioniert das Makro einwandfrei.
Wäre nett, wenn jemand weiter helfen könnte
Gruß
Harald
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP