Witam
Otrzymałem plik .sldprt ze złożoną częścią i 40 konfiguracjami.
Muszę wyodrębnić cały dwg z kilku elementów (w sumie 5 lub 200 dwg),
Jak zautomatyzować zadanie?
Z góry dziękuję.
Kolejne pytanie: jak ustawić Solidworks jako domyślny eksport dfx/dwg do dfx/dwg?
Witam
W załączeniu znajduje się makro, które znalazłem i zmodyfikowałem z pomocą grupy, aby wyodrębnić wszystkie pliki DWG z konfiguracji, ale części muszą być wykonane z blachy, aby działało. Makro przyjmuje nazwę konfiguracji.
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 - Kobra Ac z linią zagięcia .swp (29.5 KB)
Wielkie dzięki.
Co jednak zrobić z elementami, które nie są wykonane z blachy? Bo w "moim" rysunku jest 5 ścian, dla których muszę wyodrębnić DWG, ale tutaj eksportowana jest tylko ta utworzona w blasze... Próbowałem przekonwertować inne elementy na blachę, ale eksportuje tylko 1
… przepraszam, jestem kompletnym początkującym
Czy możesz pokazać nam sitodruk, na czym polega problem z 5 bokami? w celu lepszego zrozumienia.
Witam
Możesz zainspirować się tematem poruszanym TUTAJ , w przeciwnym razie zobacz załączone makro, jeśli Ci odpowiada.
Pozdrowienia
dxf-V2.swp (64 KB)
Bez blaszanego korpusu niestety nie ma cudu. Oprócz ręcznego sposobu dla każdej części w 20 konfiguracjach...
O ile mi wiadomo, nie ma makra, aby wybrać kilka twarzy do wyeksportowania w dxf w kilku konfiguracjach.
… z jednej strony jest mi dobrze, o ile robi wszystkie konfiguracje (mam około czterdziestu) ... Uruchomienie makra 4 razy bardzo mi odpowiada
Ta sama zasada, robisz konfigurację według ciała i konwertujesz je na blachę, a następnie makro zrobi resztę
5 ciał, więc uruchamiając 5 razy makro podane powyżej, wyświetlając tę jedną treść za każdym razem, gdy musi to zrobić, należy ją uruchomić w 5 różnych folderach, w przeciwnym razie pliki ulegną awarii w miarę przechodzenia.
Pozdrowienia
@d. Roger nie, jeśli zrobi konfigurację według ciała i przekonwertuje je na blachę; Musi go uruchomić tylko raz, gdy makro zostanie uruchomione w pomieszczeniu i przekonwertuje konfiguracje.
Witaj @igor_simar ,
Makro Załącznik twierdzi, że eksportuje wybrane powierzchnie płaskie części jedna po drugiej, w formacie DXF lub DWG.
Wyeksportowane dokumenty są umieszczane w podfolderze oryginalnej części o tej samej nazwie.
Nazwa każdego dokumentu jest tworzona przez sekwencję nazw oryginalnej części, bryły, konfiguracji i wybranej powierzchni.
Pozdrowienia
ExportFaceToDxfDwg.swp (114 KB)
Witam @tous
Moim zdaniem po konwersji na blachę możliwe jest przeglądanie folderu spłaszczeń o tej samej konfiguracji
Ten guru wykonał świetną robotę Ex
DZIĘKUJĘIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
SUPER!!!
WIELKI!!!
dokładnie to, czego chciałem
@m_blt
Wypróbowałem kod i nie działa
Jeśli mogę, wydaje mi się, że nazwa pliku zawiera znaki niedozwolone przez system Windows, więc twarz może istnieć w jednej konfiguracji, a nie w innej
Pozdrowienia