Pozwalam sobie prosić o pomoc, ponieważ mam problem.
Aby szybko zapisać moje otwory w DXF, używam makra (lub nawet PJ), ale od dzisiejszego ranka, kiedy go używam, skala mojej części jest modyfikowana (dla koła ø100 w solidworks znajduję się z ø2000 na moim DXF), z drugiej strony, jeśli zapiszę pod -> DXF, nie martw się...
Czy masz jakieś pomysły na ten problem? (Nie znam się na makro)
Dla tych, którzy chcą zobaczyć makro bez jego pobierania:
'**************************************************************************************************************************
'* Exemple de macro qui permet d'enregistrer les document au format DXF
'* Vous pouvez Changer l'extention pour enregistrer le document dans n'importe quelle format supporté par SW
'* Exemple réalisé par Axemble
'**************************************************************************************************************************
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swmodel As SldWorks.ModelDoc2
Dim stPath As String
Dim lgFichier As Long
Dim blretval As Boolean
Dim Errors As Long
Dim Warnings As Long
Set swApp = Application.SldWorks
'on récupére le document actif
Set swmodel = swApp.ActiveDoc
If Not swmodel Is Nothing Then
'on vérifie que le fichier est enregisté
If swmodel.GetPathName = "" Then
MsgBox "Veuillez enregistrer votre document avant de lancer la macro", vbInformation
End
Else
'on récupére l'emplacement du fichier
stPath = swmodel.GetPathName
'on récupére le nombre de caractére jusqu'au . de l'extension
lgFichier = InStrRev(stPath, ".", -1, vbTextCompare) - 1
'on récupére le chemin sans l'extention
If lgFichier > 0 Then
stPath = Left(stPath, lgFichier)
End If
End If
'si le document est une pièce
If swmodel.GetType = swDocPART Then
'on créer le développé
blretval = swmodel.ExportFlatPatternView(stPath & ".DXF", 0)
'on créer le DXF
blretval = swmodel.SaveAs3(stPath & ".DXF", 0, 0)
'si le document est une mise en plan
ElseIf swmodel.GetType = swDocDRAWING Then
'on créer le DXF
blretval = swmodel.SaveAs3(stPath & "_drw.DXF", 0, 0)
End If
'on sauvegarde le fichier
blretval = swmodel.Save3(0, 0, 0)
End If
End Sub
Problem skali dotyczy pokoju czy posła do Parlamentu Europejskiego?
Ponieważ nic nie dotyka skali w makrze. (prosty zapisz dxf dla pokoju i to samo dla MEP)
Wygląda na to, że problem wynika ze skali układu innej niż w widoku i/lub opcji eksportu. Czy możliwe jest skontaktowanie się z częścią MEP+, która powoduje problem?
Po przetestowaniu problem nie pojawia się mi po uruchomieniu makra z pomieszczenia, ale tylko wtedy, gdy jest uruchamiane z rysunku. Ponieważ wyeksportowany widok jest stosunkiem skali arkusza. Jeśli w narzędziu opcji eksportu dxf/DWG włączysz skalę wyjściową 1:1, czy to rozwiąże Twój problem? W przeciwnym razie kod makra będzie musiał zostać zmodyfikowany.