DWG-Vielfache exportieren...?

Hallo
Ich habe eine .sldprt-Datei mit einem komplexen Teil und 40 Konfigurationen erhalten.
Ich muss das gesamte dwg aus mehreren Elementen extrahieren (insgesamt 5 oder 200 dwg),
Wie automatisiere ich die Aufgabe?
Vielen Dank im Voraus.
Eine andere Frage: Wie kann man Solidworks standardmäßig für den dfx/dwg-Export in dfx/dwg verwenden?
:wink:

Hallo

Beigefügt ist ein Makro, das ich mit Hilfe der Gruppe gefunden und geändert hatte, um alle DWGs aus den Konfigurationen zu extrahieren, aber die Teile müssen aus Blech sein, damit es funktioniert. Das Makro nimmt den Namen der Konfiguration an.

Dim swApp As Object
Option Explicit
Sub main()
'Déclarations :
Dim swApp                   As SldWorks.SldWorks
Dim swModel                 As SldWorks.ModelDoc2
Dim config                  As SldWorks.Configuration
Dim vConfNameArr            As Variant
Dim sConfigName             As String
Dim i                       As Long
Dim bShowConfig             As Boolean
Dim bRebuild                As Boolean
Dim bRet                    As Boolean
Dim FilePath                As String
Dim PathSize                As Long
Dim PathNoExtension         As String
Dim NewFilePath             As String
Dim Value_                 As String
Dim ResolvedValOut          As String
Dim cusPropMgr              As SldWorks.CustomPropertyManager
Dim wasResolved             As Boolean
Dim Error As Long
Set swApp = CreateObject("SldWorks.Application") 'Lancement de SW
Set swModel = swApp.ActiveDoc 'Récuperation du modèle actif dans SW

vConfNameArr = swModel.GetConfigurationNames 'Création de la liste des configurations
For i = 0 To UBound(vConfNameArr) 'Boucle la liste : de l'élément 0 jusqu'au nombre d'élément dans la liste (Ubound)
    Set config = swModel.GetActiveConfiguration
    Set cusPropMgr = config.CustomPropertyManager
    sConfigName = vConfNameArr(i) 'Recupère l'élément N°i de la liste
    bShowConfig = swModel.ShowConfiguration2(sConfigName) 'Affiche la configuration
    Error = cusPropMgr.Get5("TYPE", True, Value_, ResolvedValOut, wasResolved) 'Récupère la valeur de la proriété "" dans la variable "Value_"
    bRebuild = swModel.ForceRebuild3(False) 'Reconstruction du modèle
    FilePath = swModel.GetPathName 'Récupère le chemin du fichier SW
    PathSize = Strings.Len(FilePath) 'Compte le nombre de caractères du chemin
    
        PathNoExtension = Strings.Left(FilePath, PathSize - 6) 'Récupère le nom de la pièce en enlevant .Sldrt
        NewFilePath = Left(FilePath, InStrRev(FilePath, "\")) & "" & (sConfigName) & ".DWG" 'Remplace le nom par Type + Lg + Nom de la config (sans Flat pattern).dwg
        bRet = swModel.ExportFlatPatternView(NewFilePath, 0) 'Exporte le déplié
    
Next i 'Passe à la prochaine config
End Subb

export_dwg_famille_de_piece - Ac cobra mit .swp Faltlinie (29.5 KB)

3 „Gefällt mir“

Vielen Dank :slightly_smiling_face:
Aber was macht man mit den Elementen, die nicht aus Blech bestehen? Denn in "meiner" Zeichnung gibt es 5 Flächen, für die ich die DWGs extrahieren muss, aber hier wird nur die in Blech erstellte exportiert... Ich habe versucht, die anderen Elemente in Blech umzuwandeln, aber es wird nur 1 exportiert :frowning:
… Tut mir leid, ich bin ein absoluter Anfänger :roll_eyes:

Können Sie uns einen Siebdruck geben, was das Problem mit den 5 Seiten ist? um besser zu verstehen.

1 „Gefällt mir“

Hallo
Sie können sich von dem behandelten Thema HIER inspirieren lassen, ansonsten sehen Sie sich das beigefügte Makro an, wenn es Ihnen passt.

Herzliche Grüße
dxf-V2.swp (64 KB)

Dies ist die Art von Teil und ich benötige die dwg jedes Teils für alle Konfigurationen

Ohne einen Blechkörper gibt es leider kein Wunder. Abgesehen von der manuellen Methode für jedes Teil auf den 20 Konfigurationen...
Meines Wissens gibt es kein Makro, um mehrere Gesichter auszuwählen, die in DXF in mehreren Konfigurationen exportiert werden sollen.

1 „Gefällt mir“

… für eine Seite ist es für mich in Ordnung, solange es alle Konfigurationen macht (ich habe ungefähr vierzig) ... Das Makro 4 mal laufen zu lassen kommt mir sehr gut entgegen :wink:

1 „Gefällt mir“

Gleiches Prinzip, Sie erstellen eine Konfiguration nach Körper und wandeln sie in Blech um, und dann erledigt das Makro den Rest

1 „Gefällt mir“

5 Körper, indem Sie also das oben angegebene Makro 5 Mal starten, indem Sie jedes Mal diesen einen Körper anzeigen, wenn es dies tun muss, muss es in 5 verschiedenen Ordnern gestartet werden, sonst stürzen die Dateien ab.
Herzliche Grüße

1 „Gefällt mir“

@d.Roger: Nein, wenn er eine Konfiguration nach Körpern vornimmt und sie in Blech umwandelt; Es muss nur einmal das Makro gestartet werden, wenn es in den Raum startet und die Konfigurationen konvertiert.

1 „Gefällt mir“

Hallo @igor_simar ,

Das Makro "Anhang" gibt an, dass die ausgewählten planaren Flächen eines Teils nacheinander im DXF- oder DWG-Format exportiert werden.
Die exportierten Dokumente werden in einem Unterordner des Originalteils mit demselben Namen abgelegt.
Der Name jedes Dokuments setzt sich aus der Abfolge der Namen des Originalteils, des Körpers, der Konfiguration und der ausgewählten Fläche zusammen.

Herzliche Grüße
ExportFaceToDxfDwg.swp (114 KB)

3 „Gefällt mir“

Hallo @tous
Meiner Meinung nach ist es nach der Konvertierung in Blech möglich, den Ordner mit der Abflachung derselben Konfiguration zu durchsuchen
Dieser Guru hat einen tollen Job gemacht Ex

1 „Gefällt mir“

Fügen Sie dies einfach hinzu, um den Export der aktiven Konfiguration oder aller Konfigurationen anzufordern

1 „Gefällt mir“

DANKEIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
SUPER!!!
GROßARTIG!!!
genau das, was ich wollte :wink:

@m.blt
Ich habe den Code ausprobiert und es funktioniert nicht


Wenn ich darf, scheint es mir, dass der Dateiname Zeichen enthält, die von Windows nicht zugelassen werden, sodass das Gesicht in einer Konfiguration existieren kann und in einer anderen nicht
Herzliche Grüße