Ik ben zo vrij om uw hulp te vragen omdat ik een probleem heb.
Om mijn boringen in DXF snel op te slaan, gebruik ik een macro (of zelfs PJ), maar sinds vanmorgen, wanneer ik deze gebruik, is de schaal van mijn onderdeel gewijzigd (voor een cirkel ø100 op solidworks merk ik dat ik een ø2000 op mijn DXF heb), aan de andere kant, als ik onder -> DXF opsla, geen zorgen ...
Heeft u ideeën over dit probleem? (Ik weet niets over macro)
Voor degenen die de macro willen zien zonder deze te downloaden:
'**************************************************************************************************************************
'* 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
Het probleem van de schaal is van een kamer of een Europarlementariër?
Omdat niets de schaal in je macro raakt. (eenvoudig dxf opslaan voor een kamer en hetzelfde voor een MEP)
Het lijkt erop dat uw probleem voortkomt uit uw lay-outschaal die afwijkt van die van de weergave en/of een exportoptie. Is het mogelijk om de MEP+het onderdeel te bereiken dat het probleem veroorzaakt?
Het probleem komt van één onderdeel (nou ja, meerdere), maar als ik ze handmatig in DXF opsla, geen problemen, aan de andere kant heb ik met de macro een verandering van schaal.
EDIT: Ik heb net de pc en solidworks opnieuw opgestart en het werkt prima. (een PC of solidworks bug misschien??)
Na het testen verschijnt het probleem niet wanneer de macro vanuit de kamer wordt gestart, maar alleen wanneer deze vanuit een tekening wordt gestart. Omdat de geëxporteerde weergave een verhouding is van de bladschaal. Als je in de dxf/DWG export optie tool output schaal 1:1 inschakelt, lost dat dan je probleem op? Anders moet de macrocode worden aangepast.