Esportazione automatica da 3dm a stp

ciao a tutti

domanda: esiste un modo easy per poter automatizzare l’esportazione multipla di file da rhino a formato .stp?

grazie in anticipo

Probabilmente con gli script puoi fare quello che vuoi.
Rhinoscript o python.

Cerca “batch export” sul forum internazionale:

Riesci ad essere più specifico su cosa vuoi fare?

Ciao Riccardo, quello che mi servirebbe sarebbe uno script che mi permetta di salvare in formato .stp un gruppo di file Rhinoceros contenuti in una stessa cartella; intendo aprendo un file di Rhinoceros uno alla volta ed esportandolo sempre uno alla volta con lo stesso nome ma in formato stp

Vedi qua:

Potresti semplicemente sostituire nel codice il “3dm” con “stp” e i tre “dwg” con “3dm” (in ques’tordine).
Poi metti il tutto in un bottone e provi.

Mi raccomando salva tutto prima e lavora con delle copie.

1 Mi Piace

Ciao,

mi aggiungo perchè sono interessato anche io alla conversazione.

Ho provato a copiare il codice e fare le modifiche richieste ma quando lancio il comando mi dice: Comando sconosciuto: Option.

Ho provato anche a cancellare le righe con asterisco.

Sto sbagliando qualcosa ma non capisco cosa.

Grazie,

Di seguito il codice che ho riportato:

Option Explicit

Rhino.Command “_-Options _RhinoScript _Reinitialize=_No _Enter _Enter”, 0

Dim sFolder
sFolder = Rhino.BrowseForFolder(, “Select folder to process”, “Batch Convert AutoCAD”)
If VarType(sFolder) <> vbString Then Exit Sub

Dim oFSO
Set oFSO = CreateObject(“Scripting.FileSystemObject”)

Dim oFolder
Set oFolder = oFSO.GetFolder(sFolder)

ProcessFolder oFSO, oFolder

Set oFolder = Nothing
Set oFSO = Nothing

Rhino.DocumentModified False
Rhino.Command “_-New _None”, 0

End Sub

Sub ProcessFolder(oFSO, oFolder)

Dim oFile, strOpen, strSave
For Each oFile In oFolder.Files
If LCase(oFSO.GetExtensionName(oFile.Path)) = “3dm” Then
strOpen = LCase(oFile.Path)
strSave = LCase(Replace(strOpen, “.3dm”, “.stp”, 1, -1, 1))
ProcessFile strOpen, strSave
End If
Next

Dim oSubFolder
For Each oSubFolder In oFolder.SubFolders
ProcessFolder oFSO, oSubFolder
Next

End Sub

Sub ProcessFile(strOpen, strSave)
Rhino.DocumentModified False
Rhino.Command "-Open " & Chr(34) & strOpen & Chr(34), 0
Rhino.Command "
-Zoom _All Extents", 0
Rhino.Command "
-SetActiveView Top", 0
Rhino.Command "
-Save " & Chr(34) & strSave & Chr(34), 0
End Sub

Se hai Rhino in italiano, o in non-inglese, serve aggiungere un carattere underscore prima di ogni comando.
Tipo un:
“Polyline”
deve diventare:
“_Polyline”

Appena ho un attimo provo anche io…

Ok grazie mille,

il mio rhino è in italiano.

Grazie,

Qui sul forum inglese hanno postato una soluzione