Skip to content

STEP

STEP (ISO 10303-21) is the industry-standard interchange for parametric CAD. It's what you send when:

  • You want a fabricator or cabinetmaker to import the design into their tool of choice.
  • You're handing the model off to Fusion 360, SolidWorks, FreeCAD, Onshape, BricsCAD, or Inventor.
  • You want the geometry as a solid rather than a mesh.
  • You want to keep per-surface colors visible on import.

How to export

Click Export → STEP (.step) above the viewport. A .step file downloads. Drag and drop into your CAD tool, or use File → Import → STEP.

What's in the file

Prompt2CAD writes AP214 (Automotive Design) STEP, which is the broadest-compatibility profile. Every primitive in your model becomes a separate MANIFOLD_SOLID_BREP (boundary-representation solid). Every unique material color is attached via the AP214 presentation chain, so FreeCAD, Fusion, and SolidWorks all pick the colors up on import:

COLOUR_RGB
  → FILL_AREA_STYLE_COLOUR
    → FILL_AREA_STYLE
      → SURFACE_STYLE_FILL_AREA
        → SURFACE_SIDE_STYLE
          → SURFACE_STYLE_USAGE
            → PRESENTATION_STYLE_ASSIGNMENT
              → STYLED_ITEM (targeting the BREP)

You don't have to know this — just useful if your CAD tool ever shows the model in grey. That usually means it's ignoring the presentation chain; check its import settings for a "use colors" option.

Units

STEP files are written in millimeters. The Prompt2CAD model is in meters internally, and the exporter multiplies by 1,000 on the way out.

If your CAD tool imports the file at 1/1000th scale, it's reading the file as meters instead of millimeters. Look for a units override in the import dialog.

What's preserved

AspectPreservedNotes
GeometryEach primitive is a solid BREP, dimensionally faithful.
ColorOne color per surface, RGB.
Materials (PBR)STEP has no concept of roughness / metalness / textures.
Sections / hierarchyPartialEvery BREP is named after its primitive, but section grouping is flattened.
ParametersThe model is "baked" at current slider values.
Boolean operations✓ (baked)If the agent used CSG, the result solid is exported, not the operands.

Coordinate convention

Three.js (the viewport) is Y-up; STEP files are written with Z-up by convention. Prompt2CAD does the remap automatically:

step_x =  three_x
step_y = -three_z
step_z =  three_y

So your model imports right-side up in Fusion / SolidWorks / FreeCAD without any extra rotation.

What it does not do

  • No assembly tree. Each primitive is a free-standing solid. If you need the model split into named components, do that in your CAD tool after import.
  • No fillets or chamfers. Geometry is faithful to what the viewport shows. The agent can add rounded edges, but they are baked into the exported solid, not parametric.
  • No tolerances or GD&T. STEP carries the geometry; tolerancing is your downstream tool's job.
  • No fabrication metadata. No hardware list, no cut list, no joinery callouts. That's a separate workflow (see generate_cut_list in the agent's toolkit — experimental).

Common import dialogs

CAD toolExpected import path
Fusion 360Open → Upload → Drop the .step. Treat as components.
SolidWorksFile → Open → choose STEP filter → import as multibody part.
FreeCADFile → Import → STEP. Each BREP becomes a separate object in the tree.
OnshapeDocument → Insert → Upload STEP file.
BricsCAD / InventorFile → Open → Set type to STEP.

If your tool complains about "unsupported entities," it's almost always a non-issue — STEP is a sprawling spec and tools ignore entities they don't understand. The geometry should still come through.

When NOT to use STEP

  • For 3D printing. Slicers want STL or 3MF, not STEP.
  • For web visualisation. STEP files are big and not browser-friendly. Use GLB.
  • For renderers expecting textures. STEP has no texture concept. Use GLB or OBJ.

Next: DXF.

Docs for Prompt2CAD — derived from the source code at the commit that built them.