Wir müssten die Baugruppendateien in DXF (Maßstab 1:1) exportieren. Kein Massenexport, aber in der Idee wäre es eher ein Export under Design
Erstes Problem, wie Sie vielleicht wissen, ist es unmöglich, eine Baugruppe direkt nach DXF zu exportieren (zumindest meines Wissens im Jahr 2017) Möglicherweise haben wir die Möglichkeit, ein Makro zu erstellen, in ein Teil zu exportieren und dann nach DXF zu exportieren, hier das zweite Problem, weil wir keine Kenntnisse über Makros haben
Zu unserer Verfügung stehen myCADtools oder myPDMtools Aber wir kennen nicht wirklich alle Fähigkeiten dieser Tools.
Haben Sie irgendwelche Leads, die Sie geben möchten? Danke im Voraus, Séb
Ich habe vor langer Zeit dieses Makro im Forum gefunden, das alle Dateien einer Baugruppe in PDF speichert; Wenn Sie wissen, was Sie tun, können Sie sich anpassen
Vielen Dank ac cobra 427 für Ihre Datei Aber ich kann es nicht starten, nichts läuft Ich habe den Eindruck, es wird keine PDF-Datei generiert Und was die Makrobearbeitung angeht, bin ich eine Murmel
Bearbeiten: Ich habe gerade verstanden, dass Sie einen bereits erstellten DRW-Plan benötigen Daraufhin wird das Makro ausgeführt
Es ist nicht möglich, eine Baugruppe in eine DXF-Datei zu exportieren, es ist notwendig, eine Zeichnung mit der Auswahl der zu exportierenden Ansichten zu durchlaufen.
Natürlich muss der Europaabgeordnete im Laufe des Verfahrens neu eingetragen werden.
Ich bin mir nicht sicher, ob Sie mit einem Makro viel Zeit bei diesem Problem sparen können. Es ist so schnell, Ihre 3 Ansichten abzulegen und sich selbst ^me zu exportieren, wie es ist, einen Knopf zu drücken und das Makro sein Ding machen zu lassen.
Für das MyCad-Tool dasselbe, nicht wirklich von Interesse für das Fach
Ich habe ein Makro, das Teile und Baugruppen mit DXFs verknüpft.
Alles, was Sie tun müssen, ist, einen leeren Hintergrund zu erstellen (Pfad, der im Makro angegeben werden soll) und das Makro in dxf im Maßstab 1 aufzunehmen.
Vielen Dank gwygwy Das ist schon ein gewaltiger Schritt nach vorne!
DXF aus der Baugruppe wird korrekt generiert Ich muss nur dazu kommen, die Baugruppe in 0,0,0 zu positionieren (notwendigerweise durch den Ursprung des 3D) Und um die Datei umzubenennen
Ist es möglich, von einem Makro aus ein Dialogfeld zu haben, in das der Name der gewünschten Datei geschrieben werden kann? oder den Namen einer SW-Eigenschaft der Datei abrufen?
Wenn ich also möchte, dass die generierte DXF-Datei nach "myValue" benannt wird, Muss ich den Part.SaveAs-Block in dem von gwygwy gesendeten Makro ändern?
'--- Speichern der DXF und Schließen des temporären
MEP Part.SaveAs PathNoExtension & ". DXF"
Part.ClearSelection2 True
Set Part = swApp.ActiveDoc
swApp.CloseDoc swDraw.GetTitle 'Wird beendet, ohne den MEP zu sichern.
.
Ich habe auch Schwierigkeiten, meine Baugruppe in 0,0,0 zu positionieren Standardmäßig befindet sich der Ursprung des DXF-Werts immer in der Mitte meiner Baugruppe
Ja, Sie müssen den Part.SaveAs-Block ändern, um die Variable PathNoExtension neu zu berechnen.
Ein kleines Beispiel:
Dim maValeur As String
maValeur = InputBox("Ma question ?", "Mon titre", "Ma valeur par défaut")
Dim FilePath As String
Dim FileTitle As String
Dim PathSize As Long
Dim TitleSize As Long
Dim PathNoExtension As String
FilePath = Part.GetPathName
FileTitle = Part.GetTitle
PathSize = Strings.Len(FilePath)
TitleSize = Strings.Len(FileTitle)
PathNoExtension = Strings.Left(FilePath, PathSize - TitleSize)
MsgBox PathNoExtension & maValeur & ".dxf"
Das Ergebnis ist wirklich nicht schlecht, Es bleibt nur noch, das Ganze in 0,0,0 zu positionieren Und um das DXF in einer Datei im Rohformat aufzunehmen und nicht auf die Aufspießung des 3D
Was meinst du mit "Alles, was du tun musst, ist, das Ganze in 0,0,0 zu positionieren"? Ein Screenshot von dem, was Sie bekommen und was Sie möchten, wäre willkommen.
Und um die dxf in einem Raw-Ordner zu speichern, müssen Sie die Variable "PathNoExtension" nach Belieben überarbeiten.
OK, mal sehen, ob so etwas wie das Folgende zu Ihnen passt:
Option Explicit
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swDraw As SldWorks.DrawingDoc
Dim swView As SldWorks.View
Dim retval As String
Dim FilePath As String
Dim FileTitle As String
Dim PathSize As Long
Dim TitleSize As Long
Dim PathNoExtension As String
Dim maValeur As String
Set swApp = CreateObject("SldWorks.Application")
Set swModel = swApp.ActiveDoc
'--- Création du nom du fichier
FilePath = swModel.GetPathName
FileTitle = swModel.GetTitle
PathSize = Strings.Len(FilePath)
TitleSize = Strings.Len(FileTitle)
PathNoExtension = Strings.Left(FilePath, PathSize - TitleSize)
maValeur = InputBox("Veuillez indiquer le nom du fichier dxf ?", "Macro Asm To DXF", "MonFichier")
PathNoExtension = PathNoExtension & maValeur & ".dxf"
'--- Calcul du décalage de l'origine
Dim vBox As Variant
Dim swAssy As SldWorks.AssemblyDoc
Dim X_max As Double
Dim X_min As Double
Dim Y_max As Double
Dim Y_min As Double
Dim Z_max As Double
Dim Z_min As Double
If swModel.GetType() <> swDocASSEMBLY Then Exit Sub
Set swAssy = swModel
vBox = swAssy.GetBox(swBoundingBoxIncludeRefPlanes)
X_max = vBox(3)
X_min = vBox(0)
Y_max = vBox(4)
Y_min = vBox(1)
Z_max = vBox(5)
Z_min = vBox(2)
Dim decalX As Double
Dim decalY As Double
decalX = (X_max - X_min) / 2
decalY = (Y_max - Y_min) / 2
'--- Création de la mise en plan
retval = swApp.GetUserPreferenceStringValue(swDefaultTemplateDrawing)
Set swDraw = swApp.NewDocument(retval, 0, 0, 0)
'--- Insertion de la vue
Set swView = swDraw.CreateDrawViewFromModelView3(swModel.GetPathName, "*Face", decalX, decalY, 0)
'--- Rend invisible les annotations de plis
swView.ShowSheetMetalBendNotes = False
'--- Force la vue à l'échelle 1:1
Dim swSheet As Sheet
Dim status As Boolean
Set swView = swDraw.GetFirstView
Set swSheet = swDraw.GetCurrentSheet
status = swSheet.SetScale(1, 1, True, True)
'--- Sauvegarde du dxf et fermeture de la MEP temporaire
swDraw.SaveAs PathNoExtension & ".DXF"
swDraw.ClearSelection2 True
swApp.CloseDoc swDraw.GetTitle
End Sub
Ich habe das Speichern der DXF-Datei in einem anderen Ordner nicht gehandhabt ...
Endlich habe ich gerade den Grund gefunden, Wir haben ein Skelett von Aufnahmen, die nicht in 3D sind Und der Umbau mit dem Xmax Xmin... Berücksichtigung der Pläne
Das Prinzip besteht darin, die Abmessungen der "BoundingBox" der Baugruppe zu berechnen und die Ansicht um die Hälfte zu verschieben, da der Ursprung der Ansicht standardmäßig der Mittelpunkt der Baugruppe ist.