Makro, um das Material aller Teile virtuell zu machen und zu ändern. aus der STEP-Datei

Hallo.

Ich muss oft 3D-Dateien (Schritt) von Industrielieferanten wiederherstellen. Diese senden mir meistens Schrittdateien, die, wenn ich sie über SolidWorks öffne, aus Baugruppen bestehen, die aus denselben Baugruppen und Teilen bestehen. Kurz...

Heute bin ich gezwungen, für jede dieser Dateien die Unterbaugruppen einzugeben und alle Teile zu öffnen, um: 1- Entfernen Sie ihr Aussehen. 2-Weisen Sie ein Motiv zu 3-Nehmen Sie es auf. 4- Machen Sie es virtuell.

Wenn die Kopfbaugruppe geöffnet ist, möchte ich nur auf ein Makro klicken, das alle Teiledateien unter dem Stamm und alle anderen, die in Unterbaugruppen aller unteren Ebenen enthalten sind, transformiert.

Ich denke, es ist möglich, über ein Makro all diese Vorgänge auf einmal und sehr schnell durchzuführen.

Leider kenne ich mich mit Solidworks Makros überhaupt nicht aus und bin nicht in der Lage, den richtigen Code zu erstellen.

Hat jemand jemals etwas Ähnliches gemacht und könnte mir helfen?

Vielen Dank.

Jérémy

Solidworks PDM 2015

Hallo Jérémy,

Um einen Raum virtuell zu machen, gibt es die MakeVirtual2-Methode  (Link).

Um ein Material anzuwenden, gibt es die SetMaterialProperty-Methode  (Link). Aber woher wissen Sie, welche Sie anwenden sollen?

Ich wollte das auch für meinen Job machen, aber mit den folgenden Varianten:

  • - Ohne Materialmanagement;
  • - Mit dem Entfernen von Unterbaugruppen, die nur eine Unterbaugruppe oder ein Teil enthalten.

Es ist mir nie gelungen, weil der erste Schritt für mich darin bestand , die Abhängigkeit von der ursprünglichen STEP-Datei zu brechen. Und soweit ich weiß, gibt es dafür keine Funktion in der API (weder während des Imports noch danach). Wenn Sie dies beim Aufzeichnen eines Makros manuell tun, wird nichts in die Datei eingefügt.

M.

Hier ist ein Entwurf, der einen Step in sldprt umwandelt, das Aussehen entfernt, das Material "AISI 304" zuweist und im selben Verzeichnis speichert.

Option Explicit
Sub main()
    Dim FilePath As String
    FilePath = "C:\MyFiles\PartTest.step"
    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Set swApp = Application.SldWorks
    Set swModel = swApp.LoadFile4(FilePath, Empty, Nothing, Empty)
    swModel.SetMaterialPropertyName2 "Default", Empty, "AISI 304"
    swModel.Extension.RemoveMaterialProperty swInConfigurationOpts_e.swAllConfiguration, Nothing
    FilePath = Replace(FilePath, ".step", ".sldprt")
    swModel.Extension.SaveAs FilePath, swSaveAsVersion_e.swSaveAsCurrentVersion, swSaveAsOptions_e.swSaveAsOptions_Silent, Nothing, Empty, Empty
End Sub

 

2 „Gefällt mir“

Es macht mir nichts aus, den Schritt in SolidWorks zu öffnen. Und soweit ich weiß, behält die sldasm-Datei keine Verbindung mit dem Schritt bei.

Das Problem ist auch, dass, wenn ich den Schritt in SolidWorks öffne, in der sldasm-Datei, die ich finde, entweder andere Baugruppen oder Teile vorhanden sind. Und dass ich, wenn ich sie virtuell machen will, sie vorher öffnen muss. Dies verschwendet eine beträchtliche Menge an Zeit.

Ist ein Makro, das in der Lage ist, die Datei zu öffnen, ihr Aussehen und ihr Material zu ändern und sie dann zu schließen. Öffnen Sie dann eine andere Datei, die zur Hauptbaugruppe gehört,  führen Sie die gleichen Vorgänge erneut aus usw. bis zur letzten Datei. Und schließlich, um alle temporären Dateien zu löschen, die zu der ursprünglichen Schrittdatei gehören, die beim Öffnen der Datei über Solidworks generiert wurde, und um auch den Schritt zu löschen.

Danke für Ihre Hilfe.

Jérémy

Ja, es ist möglich, dafür ein Makro zu erstellen

Hallo, ich habe ein grundlegendes Makro zum Umbenennen der Teile und Teilmengen, die bereits virtual.in 1 2 3 usw . sind

In SW2018 sind die Sets aus Step bereits virtuell, daher habe ich diesen Step nicht wie in SW 2015 

 


renommer_virtuel.swp
2 „Gefällt mir“

Es gibt eine Verknüpfung, die für Teile oder Baugruppen mit der ursprünglichen Kläranlage beibehalten wird. Dies gilt jedoch ab Solidworks 2017:

http://help.solidworks.com/2019/french/SolidWorks/sldworks/t_break_link_from_original_file.htm

Möglicherweise ist dies jedoch kein Problem für Ihr Unternehmen. Das einzige Risiko besteht darin, dass die Kläranlage zwei unterschiedliche Teile/Baugruppen in zwei Projekten verbindet und dass es zu gegenseitigen Modifikationen kommt (ich hatte den Fall).

Vielen Dank für Ihre Antworten.

Ich darf für den Moment nicht weiter gehen. Wir sollen in ein paar Monaten auf Solidworks 2019 umsteigen (Ja, ich weiß, wir sind im Jahr 2020 !!) und so werden wir nach dem, was G.casters sagt, nicht mehr das Problem haben, Dateien von Teilen/temporären Baugruppen in virtuelle Dateien umzuwandeln.

Dann werde ich mir die paar Codezeilen von Jerome.P und mgauroy besorgen, um zu versuchen, an etwas zu basteln, das funktionieren kann.