OpenSCAD

Last updated
OpenSCAD
Developer(s) Marius Kintel, Claire Wolf [1]
Initial release19 February 2010;14 years ago (2010-02-19)
Stable release
2021.01 [2]   OOjs UI icon edit-ltr-progressive.svg / 31 January 2021;3 years ago (31 January 2021)
Repository
Written in C++ and Qt, CGAL, OpenCSG, and OpenGL [3]
Operating system Linux, macOS, Windows, FreeBSD, NetBSD, OpenBSD
Platform IA-32, x64, arm64
Size 15–27 MB (varies by operating system) [4]
Available in12 languages
List of languages
Czech, English, French, German, Polish, Russian, Spanish, Magyar, Armenian, Turkish, Ukrainian, Chinese
Type CAD
License GPL-2.0-or-later
Website www.openscad.org

OpenSCAD is a free software application for creating solid 3D computer-aided design (CAD) objects. It is a script-only based modeller that uses its own description language; the 3D preview can be manipulated interactively, but cannot be interactively modified in 3D. Instead, 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, or Minkowski sums) to render a 3D model. As such, the program performs constructive solid geometry (CSG). OpenSCAD is available for Windows, Linux, and macOS.

Contents

Overview

Scripting language

OpenSCAD employs The OpenSCAD Language to produce 3D graphics.

Previewing

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.[ citation needed ]

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

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

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

OpenSCAD documents are human-readable scripts in plain ASCII text and potentially syntactically better suited to integrate with version control systems such as GIT.

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

It is often used to design 3D printed parts, which can be exported in various 3D file formats. Its script-based parametric nature allows it to be integrated into online model customization services, such as the "Customizer" tool on Thingiverse.

Animation of a Strandbeest model created with OpenSCAD Strandbeest 3d - crank offset corrected.gif
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 animated GIFs.

An experimental coupling with Calculix for FEM (Finite Element Method) is available. [9] FreeCAD can import OpenSCAD files also for FEM with Calculix or other supported FEM solvers. [10] FreeCAD features a workbench for interoperability with OpenSCAD. [11]

File formats

Imports

Exports

OpenSCAD views and models can be exported to many different formats. Including:

Design

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.

Platform implementations

See also

Related Research Articles

<span class="mw-page-title-main">Computer-aided design</span> Constructing a product by means of computer

Computer-aided design (CAD) is the use of computers to aid in the creation, modification, analysis, or optimization of a design. This software is used to increase the productivity of the designer, improve the quality of design, improve communications through documentation, and to create a database for manufacturing. Designs made through CAD software help protect products and inventions when used in patent applications. CAD output is often in the form of electronic files for print, machining, or other manufacturing operations. The terms computer-aided drafting (CAD) and computer-aided design and drafting (CADD) are also used.

<span class="mw-page-title-main">Constructive solid geometry</span> Creating a complex 3D surface or object by combining primitive objects

Constructive solid geometry is a technique used in solid modeling. Constructive solid geometry allows a modeler to create a complex surface or object by using Boolean operators to combine simpler objects, potentially generating visually complex objects by combining a few primitive ones.

<span class="mw-page-title-main">Open Cascade Technology</span> Open-source 3D modelling software

Open Cascade Technology (OCCT), formerly called CAS.CADE, is an open-source software development platform for 3D CAD, CAM, CAE, etc. that is developed and supported by Open Cascade SAS company.

<span class="mw-page-title-main">Rhinoceros 3D</span> 3D computer graphics software

Rhinoceros is a commercial 3D computer graphics and computer-aided design (CAD) application software that was developed by TLM, Inc, dba Robert McNeel & Associates, an American, privately held, and employee-owned company that was founded in 1978. Rhinoceros geometry is based on the NURBS mathematical model, which focuses on producing mathematically precise representation of curves and freeform surfaces in computer graphics.

SketchUp is 3D modeling software that allows users to create and manipulate 3D models of buildings, landscapes, furniture, and other objects. It is commonly used in architecture and interior design.

Navisworks is a 3D design review package for Microsoft Windows.

The table below provides an overview of notable computer-aided design (CAD) software. It does not judge power, ease of use, or other user-experience aspects. The table does not include software that is still in development. For all-purpose 3D programs, see Comparison of 3D computer graphics software. CAD refers to a specific type of drawing and modelling software application that is used for creating designs and technical drawings. These can be 3D drawings or 2D drawings.

<span class="mw-page-title-main">FreeCAD</span> Free and open-source 3D CAD software

FreeCAD is a general-purpose parametric 3D computer-aided design (CAD) modeler and a building information modeling (BIM) software application with finite element method (FEM) support. It is intended for mechanical engineering product design but also expands to a wider range of uses around engineering, such as architecture or electrical engineering. FreeCAD is free and open-source, under the LGPL-2.0-or-later license, and available for Linux, macOS, and Windows operating systems. Users can extend the functionality of the software using the Python programming language.

MEDUSA, is a CAD program used in the areas of mechanical and plant engineering by manufacturers and Engineering, Procurement and Construction (EPC) companies. The system's history is closely tied to the beginnings of mainstream CAD and the research culture fostered by Cambridge University and the UK government as well as the resulting transformation of Cambridge into a world-class tech centre in the 1980s.

<span class="mw-page-title-main">Digital Geometric Kernel</span>

Digital Geometric Kernel, is a software development framework and a set of components for enabling 3D/CAD functionality in Windows applications, developed by DInsight.

<span class="mw-page-title-main">Alibre Design</span> CAD software

Alibre Design is a 3D parametric computer aided design software suite developed by Alibre for Microsoft Windows. Available in fifteen languages. Alibre is a brand of Alibre, LLC, a company based in Texas.

<span class="mw-page-title-main">SolveSpace</span> Open-source computer-aided design software

SolveSpace is a free and open-source 2D/3D constraint-based parametric computer-aided design (CAD) software that supports basic 2D and 3D constructive solid geometry modeling.

<span class="mw-page-title-main">LibreCAD</span> Free and open-source 2D CAD software

LibreCAD is a computer-aided design (CAD) application for 2D design. It is free and open-source, and available for Linux, macOS, and Windows operating systems.

<span class="mw-page-title-main">Onshape</span> Computer-aided design software system

Onshape is a computer-aided design (CAD) software system, delivered over the Internet via a software as a service (SAAS) model. It makes extensive use of cloud computing, with compute-intensive processing and rendering performed on Internet-based servers, and users are able to interact with the system via a web browser or the iOS and Android apps. As a SAAS system, Onshape upgrades are released directly to the web interface, and the software does not require maintenance work from the user.

ShapeJS is a JavaScript-based programming language for creating 3D printable products and fully interactive creator applications. Hosted by Shapeways, it is a cloud-based system for creating 3D objects and web apps that make 3D printable things.

<span class="mw-page-title-main">Art of Illusion</span>

Art of Illusion is a free software, and open source software package for making 3D graphics.

<span class="mw-page-title-main">OpenVSP</span> Open source parametric aircraft geometry tool

OpenVSP, also known as Open Vehicle Sketch Pad, is an open source parametric aircraft geometry tool originally developed by NASA. It can be used to create 3D models of aircraft and to support engineering analysis of those models. Predecessors to OpenVSP including VSP and Rapid Aircraft Modeler (RAM) were developed by J.R. Gloudemans and others for NASA beginning in the early 1990s. OpenVSP v2.0 was released as open source under the NOSA license in January 2012. Development has been led by Rob McDonald since around 2012 and has been supported by NASA and AFRL among other contributions.

<span class="mw-page-title-main">RattleCAD</span> Bicycle computer aided design software

rattleCAD — is a parametric 2D CAD software specific for bicycle design, in particular for design bicycle frame, developed by an Austrian cyclist and a programmer Manfred Rosenberger since 2008. Application is written in the Tcl programming language with the Tk-based GUI.

References

  1. "Claire Wolf".
  2. "OpenSCAD - News".
  3. "Building OpenSCAD". GitHub . 21 November 2021.
  4. "OpenSCAD - Downloads".
  5. Transparency is evaluated in the construction order, so a part is only transparent for parts already built.
  6. Evans, Brian (2012), Practical 3D Printers: The Science and Art of 3D Printing, Apress, p. 113, ISBN   9781430243922 .
  7. Pettis, Bre; France, Anna Kaziunas; Shergill, Jay (2012), Getting Started with MakerBot, O'Reilly Media, Inc., p. 131, ISBN   9781449338657 .
  8. 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, ISBN   9780124104624 .
  9. "Example". GitHub . 21 November 2021.
  10. "FEM CalculiX - FreeCAD Documentation".
  11. "OpenSCAD Workbench - FreeCAD Documentation".
  12. "OpenSCAD User Manual/Export - Wikibooks, open books for an open world".