Openscad



OpenSCAD
Developer(s)Marius Kintel, Claire Wolf[1]
Initial release19 February 2010
Stable release
2021.01[2] / 31 January 2021; 2 months ago
Preview release
Repository
Written inC++ and Qt, CGAL, OpenCSG, and OpenGL[4]
Operating systemLinux, macOS, Windows, FreeBSD, NetBSD, OpenBSD
PlatformIA-32, x64
Size15–25 MB (varies by operating system)[5]
Available in7 languages
Czech, English, French, German, Polish, Russian, Spanish, Magyar
TypeCAD
LicenseGPLv2
Websitewww.openscad.org

OpenSCAD is great at making parametric designs — models represented by numbers that can be easily adjusted to change the size, shape, or any other aspect of a design. OpenSCAD seems to generate perfect.stl files everytime! Al's book along with the Wikipedia manual got me producing 3d printer ready files after months of struggling with Sketchup, blender and FreeCad. Using OpenSCAD to add and remove stuff on existing STL files is very easy. This is a short video giving a basic overview of how to do it. OpenSCAD is a free and easy programming language for expressing ideas for 3D printing. OpenSCAD is great at making parametric designs — models represented by numbers that can be easily adjusted to change the size, shape, or any other aspect of a design.

OpenSCAD is a free software application for creating solid 3D CAD (computer-aided design) objects. It is a script-only based modeller that uses its own description language; parts can be previewed, but cannot be interactively selected or modified by mouse in the 3D view. An OpenSCAD script specifies geometric primitives (such as spheres, boxes, cylinders, etc.) and defines how they are modified and combined (for instance by intersection, difference, envelope combination and Minkowski sums) to render a 3D model. As such, the program does constructive solid geometry (CSG). OpenSCAD is available for Windows, Linux and macOS.

Previewing[edit]

For fast previewing of models using z-buffering, OpenSCAD employs OpenCSG and OpenGL.

The 3D model position can be interactively manipulated in the view with a mouse similarly to other 3D modellers. It is also possible to define a default 'camera' position in the script.

Part colors can be defined in the 3D view (including transparency).[6]

Preview is relatively fast and allows interactive modifications while modifying the script.

The model renderer takes into account lighting, but the lighting source is not modifiable.

Use[edit]

OpenSCAD allows a designer to create accurate 3D models and parametric designs that can be easily adjusted by changing the parameters.[7]

OpenSCAD documents are human-readable scripts in plain ASCII text.

As such, OpenSCAD is a programmer-oriented solid-modeling tool[8] and has been recommended as an entry-level CAD tool for designing open-source hardware such as scientific tools for research and education.[9]

It is mostly used to design 3D printed parts, which are exported in STL format.

Animation of a Strandbeest model created with OpenSCAD

Animation is possible with a speed of a few images per seconds for simple models. The animation can have effect on any parameter, being it the camera position or the parts dimensions, position, shape or existence.It can be recorded as a set of images usable to build films.

Exportation[edit]

  • Views can be exported in PNG format.
  • 2D models can be exported in AutoCAD DXF.
  • 3D parts can be exported in AMF, OFF, STL, as simple volumes. There is no color, material nor parts definition in the exported model (July 2016).

Importation[edit]

  • 2D drawings in DXF, SVG and PNG can be imported, then extruded as monolithic parts.
  • 3D parts can be imported in STL and can be scaled and submitted to subtractive or additive operations.

Design[edit]

OpenSCAD is a wrapper to a CSG engine with a graphical user interface and integrated editor, developed in C++. As of 2016, it uses the Computational Geometry Algorithms Library (CGAL) as its basic CSG engine.

Its script syntax reflects a functional programming philosophy. Much as in Haskell, within a scope each 'variable' is treated as a constant, immutable with at most one value.

See also[edit]

  • PLaSM is another open source scripting language for creating 3D objects

Openscad Import Stl

References[edit]

  1. ^'Claire Wolf'.
  2. ^'OpenSCAD News'.
  3. ^'OpenSCAD Development Snapshots'.
  4. ^'Building OpenSCAD'.
  5. ^http://www.openscad.org/downloads.html
  6. ^Transparency is evaluated in the construction order, so a part is only transparent for parts already built.
  7. ^Evans, Brian (2012), Practical 3D Printers: The Science and Art of 3D Printing, Apress, p. 113, ISBN9781430243922.
  8. ^Pettis, Bre; France, Anna Kaziunas; Shergill, Jay (2012), Getting Started with MakerBot, O'Reilly Media, Inc., p. 131, ISBN9781449338657.
  9. ^Pearce, Joshua M. (2014), 'Chapter 6: „Digital Designs and Scientific Hardware'', Open-Source Lab: How to Build Your Own Hardware and Reduce Research Costs, Elsevier, pp. 165–254, ISBN9780124104624.

External links[edit]

  • OpenSCAD User Manual at Wikibooks
  • OpenSCAD page on Shapeoko wiki — includes links to supporting utilities, special purpose tools (such as a screw generator) and includes an example of creating a Machinist's diamond, circle, square milling test as a parameterized file suitable for re-creating at any desired size.

Related software[edit]

  • OpenJscad Web interface for a programmatic modeller with partial compatibility with OpenScad scripts. Developed in JavaScript.
  • ImplicitCAD Script-based modeller with an custom graphic engine. It does have an internal object model. Syntax similar but different from OpenScad. No GUI.
  • Rapcad Programmatic modeller
  • Blockscad3DBlockly implementation of OpenSCAD
Retrieved from 'https://en.wikipedia.org/w/index.php?title=OpenSCAD&oldid=1008630572'

OpenSCAD is a free and easy programming language for expressing ideas for 3D printing.

Mac

System requirements: Mac OS X 10.9 or newer

OpenSCAD is also available on MacPorts:

Development Snapshots

Development snapshots are built irregularly. If you want access to a more recent development snapshot, please contact the mailing list.

Windows

System requirements: Windows XP or newer on x86 32/64 bit

Development Snapshots

Development snapshots are built irregularly. If you want access to a more recent development snapshot, please contact the mailing list.

Linux

Debian / Ubuntu / Kubuntu

OpenSCAD is available in the repositories of recent distributions.

For Ubuntu users:

To update to the latest release add the following PPA before installing OpenSCAD:

Install with

Fedora

OpenSCAD is available in Fedora official repositories. To install, run the following command:

If you want the MCAD library:

Please note that you'll find OpenSCAD 2014.03 in Fedora 21 and lower. In case you'd like to use 2015.03 in Fedora 21, you can use a Copr repo with it.

openSUSE

OpenSCAD is available from software.opensuse.org

Other Linux

The following generic binary Linux packages are available:

Development Snapshots

Linux - AppImage

Please try the automatically built snapshots first if you are running a supported distribution (see below), the following AppImage builds are still experimental.

Linux - Snap

Snap packages are available, as those are built against an older Ubuntu (16.04) those are using some older components which can cause known display issues, so if possible use one of the specific distribution packages below.

Linux - Distribution Packages

The packages are automatically built based on the master branch on github.

Note: The packages are called 'openscad-nightly' so it's possible to install the development snapshot packages in parallel to the release version from the official repositories.

Debian / Ubuntu packages built on OpenSUSE build service

To install the packages, the release key must be added with apt-key to the key-ring to allow apt-get / aptitude to validate the packages.

Key ID: 75F3214F30EB8E08 (valid till 2021-04-18)
Key UID: home:t-paul OBS Project

NOTE: If you get errors about an expired key valid till 2019-02-07, please re-import via the following command.

After the key is added, the repository URL needs to be configured. This can be done by creating a new file /etc/apt/sources.list.d/openscad.list with the URL specific to the distribution.

The repository links below are shown as https, please check for your installation if https is supported. In Debian/Ubuntu this is usually handled by the apt-transport-https package. OBS also supports HTTP links, but it's recommended to use https whenever possible.

Debian 9 (Stretch)
Debian 10 (Buster)
Debian Testing
Debian Unstable
Ubuntu 16.04
Ubuntu 17.10
Ubuntu 18.04
Ubuntu 18.10
Ubuntu 19.04
Ubuntu 19.10
Ubuntu 20.04
openSUSE packages built on OpenSUSE build service
openSUSE Leap 15.0 (64-bit only)
openSUSE Leap 15.1 (64-bit only)
openSUSE Tumbleweed
Fedora packages built on OpenSUSE build service
Fedora 27 (64-bit only)
Fedora 28 (64-bit only)
Fedora 29 (x86_64, i586, armv7l, aarch64, ppc64le)
Fedora 30 (x86_64, i586, armv7l, aarch64, ppc64le)
Fedora 31 (x86_64, armv7l, aarch64, ppc64le)
Fedora Rawhide
Arch Linux

To install OpenSCAD from git on Arch Linux the openscad-git pkgbuild is available on AUR.

BSD

FreeBSD (>=10)
Freecad

Openscad

OpenBSD

OpenSCAD is available for amd64, i386 and macppc in OpenBSD packages:

Other Systems

Openscad Vs Freecad

It's possible to build OpenSCAD on other systems as long as a C++ compiler and the prerequisite software libraries are available.

Openscad Tutorial

Source Code

Openscad Examples

You can also access the latest source code on GitHub: