Macro 3D Printer 3mf Workflow/it

Macro_3D_Printer_3mf_Workflow

Descrizione
Macro FreeCAD che esporta file 3MF lisciati e conserva tutte le impostazioni di stampa dello slicer, con flusso di lavoro automatico per lo slicer preferito.

Versione macro: 00.02
Ultima modifica: 2026-02-14
Versione FreeCAD: All
Download: Toolbar icon

Macro 3D_Printer_3mf_Workflow 3D_Printer_3mf_Workflow_ConfigIni.FCMacro
Autore: 2cv001

Autore
2cv001
Download
Toolbar icon

Macro 3D_Printer_3mf_Workflow 3D_Printer_3mf_Workflow_ConfigIni.FCMacro

Link
Versione macro
00.02
Data ultima modifica
2026-02-14
Versioni di FreeCAD
All
Scorciatoia
Nessuna
Vedere anche
Nessuno

Descrizione

Macro FreeCAD che esporta file 3MF lisciati e conserva tutte le impostazioni di stampa dello slicer, con flusso di lavoro automatico per lo slicer preferito.

Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://raw.githubusercontent.com/2cv001/3D_printer_3mf_workflow/main/3D_Printer_3mf_Workflow.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://raw.githubusercontent.com/2cv001/3D_printer_3mf_workflow/main/3D_Printer_3mf_Workflow.FCMacro")

Descrizione più dettagliata:

https://github.com/2cv001/3D_printer_3mf_workflow/blob/main/README.md

Scopo

Questa macro automatizza e migliora il flusso di lavoro di stampa 3D da FreeCAD al proprio slicer:

Questa macro è il successore di macro 3d_printer_workflow.

La macro 3D_Printer_Workflow era già in grado di produrre esportazioni fluide e prive di sfaccettature. Il suo limite principale era che si basava sui file STL, che non possono memorizzare parametri dello slicer o di stampa.

Questa macro utilizza file .3mf, consentendo di salvare e riutilizzare tutte le impostazioni di stampa.

Per mantenere le funzionalità principali della macro precedente, questa versione fornisce anche un'opzione di esportazione STL con parametri di tassellatura regolabili, consentendo la generazione di mesh fluide proprio come prima.

Limitazioni

La versione corrente può esportare solo un singolo oggetto, ma si può aggirare questo problema utilizzando i collegamenti, ad esempio un gruppo semplice, per combinare più oggetti in uno solo.

Export filenames

Exports use the selected object's visible name (its Label in the FreeCAD tree), in the same directory as the saved FreeCAD document. For example, selecting Housing creates Housing.3mf and, if enabled, Housing.stl; selecting Lid creates Lid.3mf and Lid.stl. Each object has its own 3MF print settings and backups. Select one object and run the macro, then repeat for the next object.

For a PartDesign Body, selecting a face or edge in the 3D view, or a feature such as a Pad or Pocket in the tree, exports the whole Body using the Body's Label. Selecting several features of the same Body still counts as one object. Objects outside a Body retain their own labels and geometry.

Filename-incompatible characters are replaced with underscores. Names that collide within the document (including after sanitizing or ignoring letter case) receive the object's internal name as a suffix. Workflow backup/temporary suffixes and Windows device names are also adjusted to avoid conflicts. Use distinct, stable labels: renaming an object changes its export filename. Objects from different documents in the same folder should also have distinct labels.

Existing exports named after the project are not renamed automatically. To reuse their print settings, select the old .3mf in the 3MF file for print parameters field on the first export of a part. Save subsequent slicer changes in that part's new .3mf file.

This supports separate exports of 3D objects in one document; it does not split individual contours of a sketch or solids inside a single selected object.

Principio di levigatura

Con sfaccettature visibili

Senza sfaccettature visibili

La macro esporta gli oggetti selezionati in un file 3MF utilizzando i parametri di tassellatura specificati (LinearDeflection e AngularDeflection). Genera oggetti mesh temporanei per il processo di esportazione e li rimuove automaticamente in seguito.

Avvio di altri programmi o comandi

La macro consente di definire comandi personalizzati che verranno eseguiti automaticamente dopo la generazione del file 3MF. Questa funzionalità è facoltativa e può essere utilizzata per automatizzare passaggi aggiuntivi nel flusso di lavoro, come:

Panoramica del flusso di lavoro

Primo avvio

Avvii successivi

Note tecniche

Utilizzo

Eseguire la macro da FreeCAD. Il percorso dello slicer viene impostato direttamente nella finestra di dialogo principale della macro, utilizzando l'apposito campo di input.

Al primo avvio, inserire le impostazioni di stampa nello slicer e salvare il file .3mf (in genere, tranne che in Cura, basta premere Ctrl+S o selezionare "Salva" dal menu).

Ai successivi avvii, si potrà riutilizzare automaticamente le impostazioni.

Macro_3D_Printer_3mf_workflow capture écrant

Configurazione (facoltativo: per aggiungere ulteriori comandi)

Viene fornita una macro di supporto dedicata per semplificare la configurazione. I comandi vengono archiviati in un file .ini utilizzato dal flusso di lavoro.

Il pulsante ⚙️ nella finestra delle opzioni consente sia di installare che di aprire la macro di configurazione (3D_Printer_3mf_Workflow_ConfigIni.FCMacro).

Macro_3D_Printer_3mf_workflow capture écrant

Utilizzo di %PROJECT%, %PROJECTDIR% e %PROJECTNAME% nei comandi utente

Quando si definiscono i comandi di post-elaborazione personalizzati nel flusso di lavoro, si possono utilizzare tre segnaposto speciali. Questi segnaposto vengono automaticamente sostituiti dai valori derivati ​​dal file di progetto di FreeCAD.

Segnaposto disponibili

Segnaposto e loro significato:

  • %PROJECT%: percorso completo del progetto FreeCAD senza estensione
  • %PROJECTDIR%: Cartella contenente il progetto FreeCAD
  • %PROJECTNAME%: nome del file di progetto senza estensione

Esempi

Copiare il file 3MF generato accanto al progetto:

copy "%PROJECT%.3mf" "%PROJECTDIR%/backup/%PROJECTNAME%.3mf"

Eseguire uno script memorizzato nella cartella del progetto:

python "%PROJECTDIR%/scripts/postprocess.py" "%PROJECT%.3mf"

Inviare una richiesta HTTP utilizzando il nome del progetto:

curl "http://myserver/api/start?job=%PROJECTNAME%"

Accendere una presa intelligente Shelly Gen 1

curl "http://192.168.xxx.xxx/relay/0?turn=on"

Gen2

http://192.168.xxx.xxx/rpc/Switch.Set?id=0&on=true

Oppure se il dispositivo ha una password:

curl -u admin:yourpassword "http://192.168.xxx.xx/rpc/Switch.Set?id=0&on=true"

Utilizzo

Maggiori dettagli su https://github.com/2cv001/3D_printer_3mf_workflow

Discussione

Inglese: https://forum.freecad.org/viewtopic.php?t=102503

Francese: https://forum.freecad.org/viewtopic.php?t=103419

Script

Icona barra degli strumenti

Codice

ver 00.03 2026/09/18 by 2cv001 3D_Printer_3mf_Workflow.FCMacro

Download