OpenSCAD

The Programmers Solid 3D CAD Modeller

News

Work in Progress

5 Nov 2018

After a quiet summer, there's now progress integrating a number of features
that were cooking in development branches for quite some time.

3D-Mouse support

Even though the initial effort was to support 3D-Mouse devices, specifically
the relatively affordable range of SpaceMouse/SpaceNavigator products from
3Dconnexion, OpenSCAD will support various input devices (e.g. Joysticks and
and Gamepads) depending on the platform it's running on.
The preferences dialog allows configuration of the behavior of the input devices
regarding control of the 3D viewport and mapping buttons to user interface
actions.

Customizer

Inspired by the Thingiverse Customizer, this will allow customizing designs
via a simple user interface and save sets of parameter presets.
While this feature has been available in the development snapshots for
a while now, there were lots of improvements lately to both usability of the
interface as well as correctly handling of parameters hints specfied in the
model source code.

3MF Import/Export

The 3D Manufacturing Format (3MF) as defined by the
3MF Consortium is one of the contenders to take over from STL. With
support for extended features like colors, materials, properties, multiple
volumes and the possibility to extend with both public and private features,
it's much more versatile than the (for 3d printing) commonly used STL format.
As additional reason for this format being a very attractive option is that
its Specification and
reference implementation
are freely available and useable in Open Source projects.

At this point all of the features are available in the latest development
snapshots but are still marked as experimental which means they need
to be specifically enabled in the preferences dialog.

Google Summer of Code 2018

18 Feb 2018

Checkout the GSoC presentation for a quick overview of what the program provides and how it works.

Project suggestions have been posted to the wiki. If you're interested in participating, please get in touch on the mailing list or IRC to discuss details and to help you get your feet wet. We're also open to new ideas.

Student application is open from March 12 till March 27 (16:00 UTC! - full timeline) but don't wait for registration to open to get started! Discussing projects early is highly encuraged for improving chances of acceptance.

Google Summer of Code 2017

23 Mar 2017

Project suggestions have been posted to the wiki. If you're interested in participating, please get in touch on the mailing list or IRC to discuss details and to help you get your feet wet. We're also open to new ideas.

The goal of this project is two-fold, 1) offer an auto-generated GUI associated with a customizable design, making it easier to both create and use such designs and 2) offer an authoritative standard for how to specify meta-data to guide the generation of such a GUI. As a temporary measure, we're also planning to support the meta-data syntax used by Thingiverse, making it possible to use the thousands of customizable designs published there.

Want to learn more, or download development binaries for Mac or Windows? Our GSoC developer, Amarjeet Kapoor, has written a blog post detailing the state of the project: User Interface for Customizing Models.

Google Summer of Code 2016

3 Mar 2016

Project suggestions have been posted to the wiki. If you're interested in participating, please get in touch on the mailing list or IRC to discuss details and to help you get your feet wet. We're also open to new ideas.

OpenSCAD release: 2015.03

10 Mar 2015

OpenSCAD 2015.03 has just been released!

This release adds a number of features which has been in development for some time. Most prominent are text(), offset() and list comprehension functionality, as well as a better editor and other GUI improvements implemented during last year’s Google Summer of Code.

The source code, as well as binaries for Mac OS X, Windows and Linux are ready for download.

Lots of thanks go to everyone who have contributed to this release through development, translation, bug reports, bug fixes, documentation, discussions, as well as testing the development snapshots!

Google Summer of Code 2015

4 Mar 2015

Project suggestions have been posted to the wiki. If you're interested in participating, please get in touch on the mailing list or IRC to discuss details and to help you get your feet wet. We're also open to new ideas.

Google Summer of Code 2014

24 Feb 2014

Project suggestions have been posted to the wiki. If you're interested in participating, please get in touch on the mailing list or IRC to discuss details and to help you get your feet wet. We're also open to new ideas.

Known Bugs

New Website

5 May 2013

After years of ignoring the OpenSCAD website, it's finally time to give it a well-deserved facelift. The whole site is fully reworked, the content has been made a lot more available, especially the documentation. We've also launched a web forum mirror of the mailing list at forum.openscad.org. The gallery page is still work in progress and will gradually be populated with a better selection of examples.

OpenSCAD release: 2013.01

17 Jan 2013

I've just released OpenSCAD 2013.01. The source package as well as the Mac OS X binaries can be downloaded from openscad.org. Binaries for Linux and Windows will appear when the package managers get them built and tested.

Thanks a lot to all contributors - there has been significant contributions, especially towards build systems and automated testing!

Deprecations

The old include syntax "<filename.scad>" without the include keyword is no longer supported and will cause a syntax error.

OpenSCAD release: 2011.12

29 Dec 2011

I've just released OpenSCAD 2011.12. The source package as well as the Mac OS X binaries can be downloaded from openscad.org. Binaries for Linux and Windows will appear when the package managers get them built and tested.

This release of OpenSCAD has taken a lot of time to get out the door, primarily due to the backend being refactored to facilitate further development and the introduction of a regression test framework. The combination of these should make it possible to do more rapid releases in the future.

Thanks a lot to all contributors!

Have fun,-Marius

Summary of changes in this release:

Features

The MCAD library is now bundled with OpenSCAD

Added len() function. Takes one vector or string parameter and returns its length.

The index operator [] now works on strings

The version() function will return the OpenSCAD version as a vector, e.g. [2011, 09]

The version_num() function will return the OpenSCAD version as a number, e.g. 20110923

hull() Now supports 3D objects

hull() with 2D object can now use for loops and boolean operations as children

New import() statement reads the correct file format based on the filename extension (.stl, .dxf and .off is supported)

The color() statement now overrides colors specified further down in the tree

if()/else() and the ternary operator can now take any value type as parameter. false, 0, empty string and empty vector or illegal value type will evaluate as false, everything else as true.

Strings can now be lexographically compared using the <, <=, >, >= operators

Added PI constant.

Number literals in scientific notation are now accepted by the parser

Added import and export of the OFF file format

Now uses standard shortcuts for save, reload and quit on Linux and Windows. F2/F3 will still work but is deprecated.

Bugfixes:

Complex CSG models sometimes took extremely long time to normalize before OpenCSG preview

square() crashed if any of the dimensions were zero

Flush Caches didn't flush cached USE'd modules

STL export should be a bit more robust

Dropping a file into the editor under Windows didn't work (double C:/C:/ problem)

On some platforms it was possible to insertion rich text in the editor, causing confusion.

Less crashes due to CGAL assertions

OpenCSG should now work on systems with OpenGL 1.x, given that the right extensions are available

include now searches librarydir

The $fs parameter yielded only half the number of segments it should have

surface(center=true) is now correctly centered in the XY plane

Deprecations:

dxf_linear_extrude() and dxf_rotate_extrude() are now deprecated.

se linear_extrude() and rotate_extrude() instead.

The file, layer, origin and scale parameters to linear_extrude() and rotate_extrude() are now deprecated. Use an import() child instead.

import_dxf(), import_stl() and import_off() are now deprecated. Use import() instead.

When exporting geometry from the cmd-line, use the universal -o option. It will export to the correct file format based on the given suffix (dxf, stl, off). The -x and -s parameters are still working but deprecated.