Options
Every option. The CLI takes them as flags, the app and the web app show them in the options form (the less common ones under Advanced), and profiles store them as JSON at the path shown. The same options give the same files in every front end.
Output
Section titled “Output”Applies to every pipeline.
STEP part name (default: the file or text name), or the DXF block wrapping a sketch (default: no block).
| Default | none |
| Values | Text or unset |
| CLI | --name on every command |
| App and web | Output › Name |
| Profile JSON | name |
| Pipelines | Sketch, Extrude, Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette, Text Sketch, Extruded Text |
Vector art
Section titled “Vector art”How SVG and DXF files, and set text, are read, cleaned up and written as a sketch. Extrude uses them too.
How to read unitless SVG coordinates: CSS pixels (96 per inch), millimeters or inches. For DXF input, mm or in overrides the file’s own units.
| Default | CSS pixels (css) |
| Values | One of CSS pixels (css), Millimeters (mm), Inches (in) |
| CLI | --units on sketch, extrude, text, analyze, validate, preview |
| App and web | Size & units › Units |
| Profile JSON | sketch.units |
| Pipelines | Sketch, Extrude |
Scale to width
Section titled “Scale to width”Scale uniformly so the result is this many mm wide.
| Default | none |
| Values | Number or unset, at least 0 mm |
| CLI | --width on sketch, extrude, text |
| App and web | Size & units › Scale to width |
| Profile JSON | sketch.width |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Scale to height
Section titled “Scale to height”Scale uniformly so the result is this many mm tall. With a width too, it fits inside both.
| Default | none |
| Values | Number or unset, at least 0 mm |
| CLI | --height on sketch, extrude, text |
| App and web | Size & units › Scale to height |
| Profile JSON | sketch.height |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Extra scale factor.
| Default | 1× |
| Values | Number, at least 0× |
| CLI | --scale on sketch, extrude, text, analyze, validate, preview |
| App and web | Size & units › Scale (Advanced) |
| Profile JSON | sketch.scale |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Origin
Section titled “Origin”Where (0,0) lands: the canvas corner, the geometry’s bottom-left corner, or its center.
| Default | Canvas corner (canvas) |
| Values | One of Canvas corner (canvas), Geometry corner (min), Center (center) |
| CLI | --origin on sketch, extrude, text |
| App and web | Placement › Origin |
| Profile JSON | sketch.origin |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Mirror
Section titled “Mirror”Flip left↔right, for stamping, back-side etching and negatives.
| Default | off |
| Values | On or off |
| CLI | --mirror on sketch, extrude, text |
| App and web | Placement › Mirror |
| Profile JSON | sketch.mirror |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Closed shapes only
Section titled “Closed shapes only”Drop paths that are still open instead of warning about them; open paths don’t extrude.
| Default | off |
| Values | On or off |
| CLI | --closed-only on sketch, extrude, text, analyze, validate, preview |
| App and web | Shapes › Closed shapes only |
| Profile JSON | sketch.closed_only |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Strokes
Section titled “Strokes”Stroked paths: keep the centerline, convert them to paths with their width (closed shapes), or drop stroke-only paths.
| Default | Centerline (centerline) |
| Values | One of Centerline (centerline), Stroke to path (to-path), Drop (drop) |
| CLI | --strokes on sketch, extrude, text, analyze, validate, preview |
| App and web | Shapes › Strokes |
| Profile JSON | sketch.strokes |
| Pipelines | Sketch, Extrude |
Merge overlapping shapes into one outline per layer; nested shapes stay holes. Curves in merged shapes are flattened.
| Default | off |
| Values | On or off |
| CLI | --union on sketch, extrude, text, analyze, validate, preview |
| App and web | Shapes › Union |
| Profile JSON | sketch.union |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Offset
Section titled “Offset”Grow (+) or shrink (−) every closed shape by this many mm: kerf, clearance, shrinkage. Flattens curves.
| Default | 0 mm |
| Values | Number |
| CLI | --offset on sketch, extrude, text |
| App and web | Shapes › Offset |
| Profile JSON | sketch.offset |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Convert only elements with these ids, inside these <g id> groups, or on these layers.
| Default | none |
| Values | List of names |
| CLI | --select on sketch, extrude, text, analyze, validate, preview |
| App and web | Selection › Only |
| Profile JSON | sketch.select |
| Pipelines | Sketch, Extrude |
Skip elements with these ids, groups or layers.
| Default | none |
| Values | List of names |
| CLI | --exclude on sketch, extrude, text |
| App and web | Selection › Skip |
| Profile JSON | sketch.exclude |
| Pipelines | Sketch, Extrude |
Layers from
Section titled “Layers from”Put elements on DXF layers by their enclosing <g> id, or by fill color (FILL_RRGGBB, colored to match).
| Default | One layer (none) |
| Values | One of One layer (none), Group id (id), Color (color) |
| CLI | --layer-by on sketch, extrude, text, analyze, validate, preview |
| App and web | Layers › Layers from |
| Profile JSON | sketch.layer_by |
| Pipelines | Sketch, Extrude |
DXF layer name. With layers from groups or fills, the layer for anything unassigned; for DXF input, moves everything onto it.
| Default | 0 |
| Values | Text |
| CLI | --layer on sketch, extrude, text |
| App and web | Layers › Layer (Advanced) |
| Profile JSON | sketch.layer |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Font family for text in the art that doesn’t name one, or whose font is missing.
| Default | none |
| Values | Font family |
| CLI | --font on sketch, extrude, text, analyze, validate, preview |
| App (not the web app) | Fonts › Font |
| Profile JSON | sketch.font |
| Pipelines | Sketch, Extrude |
Extra fonts folder
Section titled “Extra fonts folder”A folder of font files to load as well as the system’s.
| Default | none |
| Values | Folder |
| CLI | --font-dir on sketch, extrude, text, analyze, validate, preview |
| App (not the web app) | Fonts › Extra fonts folder (Advanced) |
| Profile JSON | sketch.font_dir |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
DXF version
Section titled “DXF version”R2000, or R12 for old importers (no splines, so curves are flattened).
| Default | R2000 (r2000) |
| Values | One of R2000 (r2000), R12 (r12) |
| CLI | --dxf-version on sketch, extrude, text, section, project |
| App and web | DXF output › DXF version |
| Profile JSON | sketch.dxf_version |
| Pipelines | Sketch, Text Sketch, Cross Section, Project Silhouette |
Curves
Section titled “Curves”Arcs and splines (auto), splines only, or curves flattened to polylines.
| Default | Arcs + splines (auto) |
| Values | One of Arcs + splines (auto), Splines (spline), Polylines (polyline) |
| CLI | --curves on sketch, extrude, text |
| App and web | DXF output › Curves (Advanced) |
| Profile JSON | sketch.curves |
| Pipelines | Sketch, Text Sketch |
Join profiles
Section titled “Join profiles”Write each profile of lines and arcs as one polyline with bulges, rather than separate LINE and ARC entities.
| Default | on |
| Values | On or off |
| CLI | --no-join on sketch, extrude, text (turns it off) |
| App and web | DXF output › Join profiles (Advanced) |
| Profile JSON | sketch.join_profiles |
| Pipelines | Sketch, Text Sketch |
Tolerance
Section titled “Tolerance”Snap and simplify tolerance in mm.
| Default | 0.01 mm |
| Values | Number, at least 0 mm |
| CLI | --tolerance on sketch, extrude, text, analyze, validate, preview, section, project |
| App and web | Cleanup › Tolerance (Advanced) |
| Profile JSON | sketch.tolerance |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text, Cross Section, Project Silhouette |
Flattening tolerance
Section titled “Flattening tolerance”Largest chord error in mm when curves are flattened (polyline curves, R12, merge, offset).
| Default | 0.05 mm |
| Values | Number, at least 0 mm |
| CLI | --flatten-tolerance on sketch, extrude, text |
| App and web | Cleanup › Flattening tolerance (Advanced) |
| Profile JSON | sketch.flatten_tolerance |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Close paths
Section titled “Close paths”Snap nearby endpoints together so profiles close.
| Default | on |
| Values | On or off |
| CLI | --no-close-paths on sketch, extrude, text (turns it off) |
| App and web | Cleanup › Close paths (Advanced) |
| Profile JSON | sketch.close_paths |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Delete duplicates
Section titled “Delete duplicates”Delete duplicate paths, even ones drawn the other way round.
| Default | on |
| Values | On or off |
| CLI | --keep-duplicates on sketch, extrude, text (turns it off) |
| App and web | Cleanup › Delete duplicates (Advanced) |
| Profile JSON | sketch.delete_duplicates |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Simplify
Section titled “Simplify”Remove points along straight lines.
| Default | on |
| Values | On or off |
| CLI | --no-simplify on sketch, extrude, text (turns it off) |
| App and web | Cleanup › Simplify (Advanced) |
| Profile JSON | sketch.simplify |
| Pipelines | Sketch, Extrude, Text Sketch, Extruded Text |
Include hidden elements
Section titled “Include hidden elements”Convert elements hidden with display:none, opacity 0 and the like.
| Default | off |
| Values | On or off |
| CLI | --include-hidden on sketch, extrude, text, analyze, validate, preview |
| App and web | Cleanup › Include hidden elements (Advanced) |
| Profile JSON | sketch.include_hidden |
| Pipelines | Sketch, Extrude |
What text is set and how. Only where there are fonts: the CLI and the app.
The words to set; each line of text becomes a line.
| Default | empty |
| Values | Text |
| CLI | the text command’s arguments |
| App (not the web app) | Text › Text |
| Profile JSON | text.text |
| Pipelines | Text Sketch, Extruded Text |
Font family (default: sans-serif).
| Default | none |
| Values | Font family |
| CLI | --font on text |
| App (not the web app) | Text › Font |
| Profile JSON | text.font |
| Pipelines | Text Sketch, Extruded Text |
Font size (em height) in mm.
| Default | 10 mm |
| Values | Number, at least 0 mm |
| CLI | --size on text |
| App (not the web app) | Text › Size |
| Profile JSON | text.size_mm |
| Pipelines | Text Sketch, Extruded Text |
Alignment
Section titled “Alignment”Line alignment when there are several lines.
| Default | Left (left) |
| Values | One of Left (left), Center (center), Right (right) |
| CLI | --align on text |
| App (not the web app) | Text › Alignment |
| Profile JSON | text.align |
| Pipelines | Text Sketch, Extruded Text |
Letter spacing
Section titled “Letter spacing”Extra space between glyphs in mm.
| Default | 0 mm |
| Values | Number |
| CLI | --letter-spacing on text |
| App (not the web app) | Text › Letter spacing (Advanced) |
| Profile JSON | text.letter_spacing |
| Pipelines | Text Sketch, Extruded Text |
Line spacing
Section titled “Line spacing”Line pitch as a multiple of the size.
| Default | 1.2× |
| Values | Number, at least 0× |
| CLI | --line-spacing on text |
| App (not the web app) | Text › Line spacing (Advanced) |
| Profile JSON | text.line_spacing |
| Pipelines | Text Sketch, Extruded Text |
Extrude
Section titled “Extrude”How vector art and text become solids.
Extrusion depth in mm (for layers without a depth of their own).
| Default | 3 mm |
| Values | Number, at least 0 mm |
| CLI | --depth on extrude, text |
| App and web | Extrude › Depth |
| Profile JSON | extrude.depth |
| Pipelines | Extrude, Extruded Text |
Layer depths
Section titled “Layer depths”Depths for particular layers, such as fill colors with Layers from: Color. 0 skips a layer. Every layer starts at z = 0, so colors become heights.
| Default | none |
| Values | Layer names and depths in mm |
| CLI | --depth on extrude |
| App and web | Extrude › Layer depths |
| Profile JSON | extrude.layer_depths |
| Pipelines | Extrude |
Meshes
Section titled “Meshes”How meshes are read, repaired and turned into faces. Sections and silhouettes use the reading and placement options too.
The units the file is in. From file uses the file’s own unit; STL has none, so millimeters.
| Default | From file (auto) |
| Values | One of From file (auto), Millimeters (mm), Centimeters (cm), Meters (m), Inches (in) |
| CLI | --units on mesh-to-solid, split, section, project, analyze, validate, preview |
| App and web | Size & units › Units |
| Profile JSON | mesh_to_solid.units |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Extra scale factor.
| Default | 1× |
| Values | Number, at least 0× |
| CLI | --scale on mesh-to-solid, split, section, project, analyze, validate, preview |
| App and web | Size & units › Scale (Advanced) |
| Profile JSON | mesh_to_solid.scale |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Up axis
Section titled “Up axis”Which axis is up in the file: auto (Z, or Y for glTF), Z, or Y for Blender and game assets.
| Default | Auto (auto) |
| Values | One of Auto (auto), Z (z), Y (y) |
| CLI | --up on mesh-to-solid, split, section, project, analyze, validate, preview |
| App and web | Placement › Up axis |
| Profile JSON | mesh_to_solid.up |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Origin
Section titled “Origin”Move the result: keep the file’s coordinates, the bounding box’s min corner, its center, or centered in XY sitting on Z = 0. Split moves each part.
| Default | Keep (keep) |
| Values | One of Keep (keep), Min corner (min), Center (center), Bottom center (bottom-center) |
| CLI | --origin on mesh-to-solid, split, section, project |
| App and web | Placement › Origin |
| Profile JSON | mesh_to_solid.origin |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Object
Section titled “Object”Convert only the object with this id or name in a multi-object file (3MF, OBJ, glTF). Analyze lists them.
| Default | none |
| Values | Text or unset |
| CLI | --object on mesh-to-solid, split, section, project, analyze, validate, preview |
| App and web | Selection › Object |
| Profile JSON | mesh_to_solid.object |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Repair mesh
Section titled “Repair mesh”Fix broken meshes first: drop duplicate faces, weld cracks, unify winding, fill small holes.
| Default | off |
| Values | On or off |
| CLI | --repair on mesh-to-solid, split, section, project, analyze, validate, preview |
| App and web | Repair › Repair mesh |
| Profile JSON | mesh_to_solid.repair |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Surface body
Section titled “Surface body”Convert even if the mesh isn’t watertight; CAD imports the result as a surface body instead of a solid.
| Default | off |
| Values | On or off |
| CLI | --surface-body on mesh-to-solid, split, section, project, analyze, validate, preview |
| App and web | Repair › Surface body |
| Profile JSON | mesh_to_solid.surface_body |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Fix normals
Section titled “Fix normals”Flip shells whose faces point inwards.
| Default | on |
| Values | On or off |
| CLI | --no-fix-normals on mesh-to-solid, split, section, project (turns it off) |
| App and web | Repair › Fix normals (Advanced) |
| Profile JSON | mesh_to_solid.fix_normals |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Merge distance
Section titled “Merge distance”Vertices closer than this many mm are merged.
| Default | 0.001 mm |
| Values | Number, at least 0 mm |
| CLI | --merge-distance on mesh-to-solid, split, section, project |
| App and web | Repair › Merge distance (Advanced) |
| Profile JSON | mesh_to_solid.merge_distance |
| Pipelines | Mesh to Solid, Split to Bodies, Cross Section, Project Silhouette |
Prismatic conversion
Section titled “Prismatic conversion”Turn faceted cylinders (holes, bosses, straight fillets) into true cylindrical faces you can select, fillet and constrain.
| Default | off |
| Values | On or off |
| CLI | --prismatic on mesh-to-solid, split, section, project |
| App and web | Faces › Prismatic conversion |
| Profile JSON | mesh_to_solid.prismatic |
| Pipelines | Mesh to Solid, Split to Bodies |
Merge coplanar faces
Section titled “Merge coplanar faces”Merge coplanar triangles into one face; off writes one face per triangle.
| Default | on |
| Values | On or off |
| CLI | --no-merge-coplanar on mesh-to-solid, split, section, project (turns it off) |
| App and web | Faces › Merge coplanar faces (Advanced) |
| Profile JSON | mesh_to_solid.merge_coplanar |
| Pipelines | Mesh to Solid, Split to Bodies |
Simplify edges
Section titled “Simplify edges”Remove vertices along straight edges.
| Default | on |
| Values | On or off |
| CLI | --no-simplify on mesh-to-solid, split, section, project (turns it off) |
| App and web | Faces › Simplify edges (Advanced) |
| Profile JSON | mesh_to_solid.simplify_edges |
| Pipelines | Mesh to Solid, Split to Bodies |
Coplanar angle
Section titled “Coplanar angle”Largest angle in degrees between triangles merged into one face.
| Default | 0.5° |
| Values | Number, at least 0° |
| CLI | --coplanar-angle on mesh-to-solid, split, section, project |
| App and web | Faces › Coplanar angle (Advanced) |
| Profile JSON | mesh_to_solid.coplanar_angle |
| Pipelines | Mesh to Solid, Split to Bodies |
Coplanar distance
Section titled “Coplanar distance”Largest distance in mm a vertex may sit off a face’s plane and still merge.
| Default | 0.005 mm |
| Values | Number, at least 0 mm |
| CLI | --coplanar-distance on mesh-to-solid, split, section, project |
| App and web | Faces › Coplanar distance (Advanced) |
| Profile JSON | mesh_to_solid.coplanar_distance |
| Pipelines | Mesh to Solid, Split to Bodies |
Sections and silhouettes
Section titled “Sections and silhouettes”Where a mesh is cut, or which way it is looked along.
The axis a section cuts across, or a projection looks along.
| Default | Z (z) |
| Values | One of X (x), Y (y), Z (z) |
| CLI | --axis on section, project |
| App and web | Section › Axis |
| Profile JSON | section.axis |
| Pipelines | Cross Section, Project Silhouette |
Positions
Section titled “Positions”Positions along the axis to cut at, in mm; each becomes a DXF layer.
| Default | 0 mm |
| Values | List of numbers in mm |
| CLI | --at on section |
| App and web | Section › Positions |
| Profile JSON | section.at |
| Pipelines | Cross Section |