Formlabs Developers
Download PreForm Insider to start developing with the PreForm API.

Job

A job, or print job, is what a printer runs. PreForm creates a job from a scene by slicing the scene into layers, the same step that runs when you click Print Now or Upload to Queue in PreForm. The job carries the layers, the scene's print settings, and a name that operators see on the printer and in Dashboard.

From scene to job#

A scene stays in PreForm, and you can keep changing it. A job is a copy of the scene at the moment it's sliced:

flowchart LR
    scene["Scene<br/>models and settings"] -- "slice" --> job["Job<br/>layers, print settings, job name"]
    job --> pq["Printer queue"]
    job --> gq["Group queue<br/>(Dashboard)"]

Changes to the scene after slicing don't reach a job that already exists. To print the changed scene, create a new job from it.

Prepare the models before you create a job: orient them, support them, and place them on the build platform. For more information, see Model.

Send a job to a printer#

The print_scene method slices the scene into a job and uploads the job in one step:

Python
# print_now=False puts the print job in the printer's queue without
# starting it.
job = preform.print_scene(
    scene_id=scene.scene_id,
    printer=PRINTER,
    job_name="bracket",
    print_now=False,
)
print(f"Print job {job.job_id}")

The printer field takes a printer's serial name or IP address, or the queue ID of a Printer Group. The print_now field picks between the two print buttons in PreForm:

  • print_now=False: Upload to Queue. The job waits in the printer's queue until an operator starts it on the touchscreen.
  • print_now=True: Print Now. The job starts immediately, and the call fails when the printer isn't ready to print.

Caution: Omitting print_now defers to the printer's ready_to_print_now flag, so the job starts immediately on a printer that is ready. Pass print_now=False when an operator checks the build platform and resin tank before each print.

The job_name field is the name an operator sees on the printer and in Dashboard. An order number or a batch ID in the name lets the operator match a finished build to its orders.

For more information, see Queue.

Keep the scene for later#

To print the scene again later, or to change it first, save it as a .form file with save_form_file. A .form file holds the models and settings, and it opens in PreForm. For more information, see Scene.

What's next#

Feedback & Bug Reports