Konwerter wsadowy - Spawana część kolesia - STEP

Witam 

Czy za pomocą BATCH CONVERTER możliwe jest uzyskanie kilku plików STEP , zaczynając od jednej mechanicznie spawanej części z kilkoma korpusami?

a także nazwij każdy krok nazwą "Lista spawanych części" ? 


2-structure_table.sldprt

Cześć, próbowałem manipulacji, oczywiście konieczne będzie wcześniejsze zarejestrowanie każdego z ciał w tym samym pliku.

Kliknij prawym przyciskiem myszy Korpusy bryłowe => Zapisz obiekty.

Następnie za pomocą konwertera wsadowego możesz zastosować go do całego folderu.

Cdt

PS: brakuje Ci zaślepek w swojej konstrukcji, bardzo przydatnych do włożenia stóp.

2 polubienia

Witam 

dzięki za odpowiedź, ale tak naprawdę moim celem było uniknięcie korzystania z tej funkcji "Ratuj ciała". aby zaoszczędzić czas, gdy masz dużo części do przetworzenia .

 

PS: tak, to tylko szkic do omówienia  

@ monica.danelon

Jeśli dobrze rozumiem, czy chcesz wykonać montaż z elementu wielobryłowego?

Jeśli tak

W drzewie tworzenia części kliknij prawym przyciskiem myszy folder z listą spawanych części, a następnie zapisz bodies.In funkcji Zapisz obiekty, klikasz na Przypisanie automatycznego nazewnictwa, odznaczasz Absorbuj wycięte obiekty, a następnie klikasz Przeglądaj w obszarze Sprawdź zespół, aby nazwać zespół i na koniec zatwierdzić.

Stamtąd masz montaż do zrobienia, spakuj i przejdź do dodania prefiksu do swoich części, a następnie zapisz w kroku.

Niech Moc będzie z wami.

 

Witam. Wypróbuj to makro:

Option Explicit
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swPart As SldWorks.PartDoc
Dim swBody As SldWorks.Body2
Dim vBodies As Variant
Dim vBody As Variant
Dim boolstatus As Boolean
Dim FilePath As String
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
If swModel Is Nothing Then
    MsgBox "Ouvrir une pièce"
    Exit Sub
End If
If swModel.GetType <> swDocumentTypes_e.swDocPART Then
    MsgBox "Ouvrir une pièce"
    Exit Sub
End If
Set swPart = swModel
vBodies = swPart.GetBodies2(swBodyType_e.swSolidBody, True)
For Each vBody In vBodies
    Set swBody = vBody
    swBody.Select2 False, Nothing
    FilePath = Left(swModel.GetPathName, InStrRev(swModel.GetPathName, ".") - 1) & " - " & GetCutList(swModel, swBody.Name) & ".STEP"
    boolstatus = swPart.SaveToFile3(FilePath, swSaveAsOptions_e.swSaveAsOptions_Silent, swCutListTransferOptions_e.swCutListTransferOptions_CutListProperties, False, Empty, Empty, Empty)
    If swApp.ActiveDoc.GetTitle <> swModel.GetTitle Then
        swApp.CloseDoc swApp.ActiveDoc.GetTitle
    End If
Next
End Sub

Function GetCutList(swModel As SldWorks.ModelDoc2, BodyName As String) As String
    Dim swFeat As SldWorks.Feature
    Dim swBodyFolder As SldWorks.BodyFolder
    Dim swBody As SldWorks.Body2
    Dim vBodies As Variant
    Dim vBody As Variant
    Set swFeat = swModel.FirstFeature
    While Not swFeat Is Nothing
        If swFeat.GetTypeName = "CutListFolder" Then
            Set swBodyFolder = swFeat.GetSpecificFeature
            vBodies = swBodyFolder.GetBodies
            If Not IsEmpty(vBodies) Then
                For Each vBody In vBodies
                    Set swBody = vBody
                    If swBody.Name = BodyName Then
                        GetCutList = swFeat.Name
                        Exit Function
                    End If
                Next
            End If
        End If
        Set swFeat = swFeat.GetNextFeature
    Wend
    GetCutList = BodyName
End Function

 

2 polubienia