openscad - Man Page

script file based graphical CAD environment

Examples (TL;DR)


openscad [options] [file]


This manual page documents briefly the openscad command.

openscad is a software for creating solid 3D CAD objects. It focuses on CAD aspects rather than artistic ones.

OpenSCAD will start as a graphical program unless export options are given (see below). For the usage of the GUI and a description of the OpenSCAD language see the OpenSCAD user manual at A tutorial can be found at


-o outputfile

Export the given file to outputfile in STL, OFF, AMF, 3MF, DXF, SVG, or PNG format, depending on file extension of outputfile. If this option is given, the GUI will not be started.

Known extensions: stl, off, amf, 3mf, csg, dxf, svg, png, echo, ast, term, nef3, nefdbg.

Additional formats, which are mainly used for debugging and testing (but can also be used in automation), are AST (the input file as parsed and serialized again), CSG (an OpenSCAD language representation of the input file with calculations done and module calls applied), TERM (the constructive solid geometry expression passed to OpenCSG).  If outputfile is null, no output file will be written, but the file will still be evaluated and all echo commands will be written to the standard error output. (The rendering process will still take place if the --render option is given.)


Overrides format of exported scad file when using option -o, arg can be any of its supported file extensions.


Quiet mode (don't print anything except errors)

-d file.deps

If the -d option is given, all files accessed while exporting are written to the given deps file in the syntax of a Makefile.

-m make_command

If a nonexisting file is accessed during OpenSCAD's operation, it will try to invoke make_command missing_file to create the missing file, and then read it again.

-D var=val

This option can be used to assign constant values to OpenSCAD variables. The variable's value is an expression, so if this mechanism is used to assign strings, care has to be taken that the shell does not consume quotation marks. More than one -D option can be given.


Customizer parameter file.


Customizer parameter set.


Print version.


If exporting an image, render the model fully. (Default is preview)


If exporting an image, use an OpenCSG preview (optionally in throwntogether mode for quicker rendering).


Export N animated frames as PNG images.


View options


If exporting an image as an OpenCSG preview, stop rendering after encountering limit elements to avoid runaway resource usage.


If exporting an image, use a Gimbal camera with the given parameters.  Rot is rotation around the x, y, and z axis, trans is the distance to  move the object in the x, y, and z directions, and distance is the  distance between the camera and the center of the object.


If exporting an image, use a Vector camera with the given parameters.  The first three are for the Eye position, while the next three are for  the Center (or target) that the camera will look at. The 'up' vector is  not currently supported.


If exporting an image, adjust camera distance to fit the whole design in the frame


If exporting an image, center the design in the frame


If exporting an image, specify the pixel width and height


If exporting an image, specify whether to use orthographic or perspective  projection


If exporting an image, use the specified color scheme for the rendering. scheme can be any of Cornfield, Sunset, Metallic, Starnight, BeforeDawn, Nature or DeepOcean Solarized, Tomorrow, Tomorrow 2, Tomorrow Night, Monotone.


Stop on the first warning


Configure the parameter check for user modules and functions


Configure the parameter range check for builtin modules


Show which versions of libraries were used to compile the program, and which OpenGL details are discovered.

Command Line Examples

Render example001.scad into the .stl format (raw triangle data):

openscad -o example001.stl examples/example001.scad

Compile a 2d image using a camera rotated 25 degrees in x and 35 in z,  distance 500, with orthographic projection:

openscad -o o.png o.scad --camera=0,0,0,25,0,35,500 --projection=ortho

Set the 'mode' variable in example017 so that it will render only the  parts of the shape. Export to a .dxf file.

openscad -o example017.dxf -D'mode="parts"' examples/example017.scad


OpenSCAD was written by Claire 'Clifford' Wolf, Marius Kintel, and others.

This manual page was written by chrysn <>, for the Debian project (and may be used by others). Updated by  the OpenSCAD team.