Die Inventor FAQ wird unterstützt von:

Inventor FAQ Logo

11.04.2017

Alle Blechabwicklungen in einer Baugruppe als DXF exportieren (VBA)

Wer die Toolbox hat, hat diese Möglichkeit bereits standardmäßig.

Für alle anderen hier ein VBA-Beispiel.

Sub IAM_Blechabw()

Dim oAsmDoc As Inventor.AssemblyDocument
Set oAsmDoc = ThisApplication.ActiveEditDocument

' Get all of the referenced documents from an assembly
Dim oRefDocs As DocumentsEnumerator
Set oRefDocs = oAsmDoc.AllReferencedDocuments
' Iterate through the list of documents.
Dim oRefDoc As Document
Dim oSheetMetalCompDef As SheetMetalComponentDefinition
Dim oFlatPattern As FlatPattern
 
For Each oRefDoc In oRefDocs
    If oRefDoc.SubType = "{9C464203-9BAE-11D3-8BAD-0060B0CE6BB4}" Then
         Set oFlatPattern = oRefDoc.ComponentDefinition.FlatPattern
         Set oSheetMetalCompDef = oRefDoc.ComponentDefinition
          If oSheetMetalCompDef.HasFlatPattern = False Then
                
                oSheetMetalCompDef.Unfold
                'oRefDoc.Save
                
          End If
         'Pfad ggf. anpassen!
         pfad = Environ("HOMEPATH") & "\Abwicklungen"
         On Error Resume Next
                MkDir Environ("HOMEPATH")
                MkDir pfad
        On Error GoTo 0
                dxfFileName = pfad + "\" & Left(oRefDoc.DisplayName, Len(oRefDoc.DisplayName) - 4) & " Abwicklung.dxf"
                
                
                Dim oDataIO As DataIO
                Set oDataIO = oRefDoc.ComponentDefinition.DataIO
                Dim sOut As String
                sOut = "FLAT PATTERN DXF?AcadVersion=R12&OuterProfileLayer=CUT&InteriorProfilesLayer=CUT&SplineTolerance Double 0.01 &InvisibleLayers=IV_TANGENT;IV_BEND"
                oDataIO.WriteDataToFile sOut, dxfFileName
                oRefDoc.Close (True)
    End If
Next
End Sub

Keine Kommentare:

Kommentar veröffentlichen

War der Beitrag hilfreich oder hast du eine Ergänzung dazu?
Ist noch eine Frage offen?
Ich freue mich auf deine Rückmeldung!

Related Posts Plugin for WordPress, Blogger...
Inventor FAQ Newsletter. Emailadresse: