Openscad - The Programmers Solid 3D CAD Modeller

  •        445

OpenSCAD is software for creating solid 3D CAD models. Unlike most free software for creating 3D models (such as Blender) it does not focus on the artistic aspects of 3D modelling but instead on the CAD aspects. Thus it might be the application you are looking for when you are planning to create 3D models of machine parts but pretty sure is not what you are looking for when you are more interested in creating computer-animated movies.

OpenSCAD is not an interactive modeller. Instead it is something like a 3D-compiler that reads in a script file that describes the object and renders the 3D model from this script file. This gives you (the designer) full control over the modelling process and enables you to easily change any step in the modelling process or make designs that are defined by configurable parameters.

OpenSCAD provides two main modelling techniques: First there is constructive solid geometry (aka CSG) and second there is extrusion of 2D outlines. Autocad DXF files can be used as the data exchange format for such 2D outlines. In addition to 2D paths for extrusion it is also possible to read design parameters from DXF files. Besides DXF files OpenSCAD can read and create 3D models in the STL and OFF file formats.

http://www.openscad.org/
https://github.com/openscad/openscad
http://code.google.com/p/openscad

Tags
Implementation
License
Platform

   




Related Projects

FreeCAD - An Open Source parametric 3D CAD modeler

  •    C++

FreeCAD is a general purpose feature-based, parametric 3D modeler for CAD, MCAD, CAx, CAE and PLM, aimed directly at mechanical engineering and product design but also fits a wider range of uses in engineering, such as architecture or other engineering specialties. FreeCAD is based on OpenCASCADE, a powerful geometry kernel, features an Open Inventor-compliant 3D scene representation model provided by the Coin 3D library, and a broad Python API.

OpenJSCAD - Set of modular, browser and command line tools for creating parametric 2D & 3D designs with Javascript

  •    Javascript

OpenJsCad.org is a more up-to-date OpenJsCAD frontend where you can edit .jscad files either locally or online via JS editor (built-in). A few functions are available to make the transition from OpenSCAD to OpenJSCAD easier (scad-api built-in), as well CLI (command-line interface) for server-side computations with NodeJS.

ImplicitCAD - A math-inspired CAD program in haskell. CSG, bevels, and shells; 2D & 3D; gcode generation

  •    Haskell

ImplicitCAD is a programmatic CAD program, implemented in haskell. Unlike traditional CAD programs, programmatic CAD programs use text descriptions of objects, as in programming. Concepts like variables, control structures and abstraction are used, just as in programming. Generally, objects in programmatic CAD are built with Constructive Solid Geometry or CSG. Unions, intersections and differences of simpler shapes slowly build the object. ImplicitCAD supports all this and much more.

QCAD - Crossplatform CAD Solution

  •    C++

QCAD is an application for computer aided drafting in two dimensions (2d). With QCAD you can create technical drawings such as plans for buildings, interiors, mechanical parts or schematics and diagrams.

Librecad - Open Source 2D-CAD

  •    C++

LibreCAD is a comprehensive, 2D CAD application based on the community edition of QCad. It is available in more than 20 languages. LibreCAD has been re-structured and ported to qt4 and works natively cross platform between OSX, Windows and Linux.


BRL-CAD - Solid Modeling System

  •    Java

BRL-CAD is a powerful cross-platform constructive solid geometry solid modeling system that includes an interactive geometry editor, ray-tracing for rendering amp; geometric analyses, network distributed framebuffer support, image & signal-processing tools.

ArgoUML - UML modeling tool

  •    Java

ArgoUML is the leading open source UML modeling tool and includes support for all standard UML 1.4 diagrams. It supports Class diagram, Statechart diagram, Activity diagram, Use Case diagram, Collaboration diagram, Deployment diagram and Sequence diagram. The diagram could be exported to GIF, PNG, PS, EPS, PGML and SVG. It generates code for Java, C++, C# and PHP. It also supports reverse engineering, generates code from diagram.

Green - Create UML diagram from code

  •    Java

green is a LIVE round-tripping editor, meaning that it supports both software engineering and reverse engineering. You can use green to create a UML class diagram from code, or to generate code by drawing a class diagram. green supports exporting files to both jpg and gif format, so that you can share you diagrams without any issues!

ModelGoon - UML for Java

  •    Java

ModelGoon provides support to create UML diagram from Java source. It provides support to build packages dependencies diagram, Class Diagram from existing sources, Build Sequence Diagram from a Java method, Shows the dependencies between user selected packages and lot more. ModelGoon is not a UML modeler, but just an UML point of view above the Java source code. It still uses UMLet for drawing purpose and the Eclipse Modeling Tools for implementing full MDA platforms.

Eclipse Model Development Tools

  •    Java

The Model Development Tools (MDT) project provide exemplary tools for developing models based on those metamodels. It supports creating UML diagram, Reverse engineer UML diagram from code, and lot more.

StarUML - UML or MDA Platform

  •    Delphi

StarUML is a software modeling tool to develop fast, flexible, extensible, featureful UML/MDA platform running on Win32 platform. It is a good alternative to Rational Rose. StarUML provides simple and powerful plug-in architecture so anyone can develop plug-in modules in COM-compatible languages.

Dia - Visio alternative

  •    GTK+

Dia is inspired by the commercial Windows program Visio, though more geared towards informal diagrams for casual use. It can be used to draw many different kinds of diagrams. It currently has special objects to help draw entity relationship diagrams, UML diagrams, flowcharts, network diagrams, and many other diagrams. It is also possible to add support for new shapes by writing simple XML files, using a subset of SVG to draw the shape.

Swift-Diagram-Playgrounds - Drawing diagrams in Swift using a recursive enum data structure

  •    Swift

This is an adaption of Apple’s sample code for the Protocol-Oriented Programming in Swift talk given during WWDC 2015. Included is Apple’s original example playground file Crustacean.playground that uses a Protocol-oriented design (updated for Swift 3). In addition there's an alternative version CrustaceanEnumOriented.playground that uses a recursive enum as the data structure.

jdl-studio - JDL Studio is an online JHipster Domain Language visual editor

  •    Javascript

Hello, this is JDL-Studio, an online tool for drawing UML diagrams for JHipster based on the JDL syntax. It tries to keep its syntax visually as close as possible to the generated UML diagram without resorting to ASCII drawings. The JDL-Studio web application is a simple editor with a live preview. It is purely client side and changes are saved to the browser's localStorage, so your diagram should be here the next time, (but no guarantees).

Archimedes: The open CAD

  •    Java

Archimedes is a free and open source CAD (Computer Aided Design) software. It is a robust system built over Eclipse's Rich Client Platform fully based on plug ins. This means it is easily extensible but also has a pretty thin core that allows you to select the features you need and drop the other ones easily.

Mermaid - Generation of diagram and flowchart from text in a similar manner as markdown

  •    Javascript

Generation of diagrams and flowcharts from text in a similar manner as markdown. Ever wanted to simplify documentation and avoid heavy tools like Visio when explaining your code? This is why mermaid was born, a simple markdown-like script language for generating charts from text via javascript.

UMLGraph - Automated Drawing of UML Diagrams

  •    Java

UMLGraph allows the declarative specification and drawing of UML class and sequence diagrams. The current features are part of an ongoing effort aiming to provide support for all types UML diagrams. Running the UmlGraph doclet on the specification will generate a Graphviz diagram specification that can be automatically processed to create Postscript, GIF, SVG, JPEG, fig, or Framemaker drawings.

nomnoml - The sassy UML diagram renderer

  •    Javascript

Hello, this is nomnoml, a tool for drawing UML diagrams based on a simple syntax. It tries to keep its syntax visually as close as possible to the generated UML diagram without resorting to ASCII drawings. Created by Daniel Kallin. Contributions by Alexander Moosbrugger and korroz.

diagram - CLI app to convert ascii arts into hand drawn diagrams.

  •    Go

Diagram is a CLI tool to generate hand drawn diagrams from ASCII arts. It's a full featured CLI application which converts the ASCII text into hand drawn diagrams. The CLI part is based on gocui and the ascii to png conversion is done using the gg library.

K3Studio

  •    C++

K3Studio is the universal workbench for 2d/3d modeling, visualization and simulation. The main topic is simulation and visualization of automata networks, but it can be used for diagram drawing, flowcharting, presentation, as a CAD, GIS,...