Release notes 014

Work in progress - do not translate yet!!

Jeep model by Psicofil

Site migration
We finally moved all the web applications of FreeCAD from SourceForge to our own domain. The new FreeCAD homepage can be found at http://www.freecadweb.org, the wiki is now at http://www.freecadweb.org/wiki, the bug and features tracker at http://www.freecadweb.org/tracker, and the forum at http://forum.freecadweb.org. If you had an account on one of these applications when we were on SourceForge, you can regain your existing user following these instructions.

The only part of FreeCAD that remains at SourceForge is the main git repository, at the same address: http://sourceforge.net/p/free-cad/code/ci/master/tree/ but there is also have an automatic mirror of that code set up on github, at http://github.com/FreeCAD/FreeCAD_sf_master

If you haven't met the incredible FreeCAD community yet, pay us a visit on the forum, and be amazed by its talent, energy and helpfulness.

Move to pyside, FreeCAD is now fully LGPL
With the many complications caused by the double-license model of FreeCAD (LGPL & GPL), some of the components of FreeCAD (namely the OpenCasCade kernel) being incompatible with GPL code, we decided to switch all the remaining bits of GPL code of FreeCAD to LGPL. As a result of this operation, PyQt is not used anymore, and has been replaced by PySide. There is not much consequence for python scriptwriters, PyQt can still be used inside FreeCAD.

After we finished the move to LGPL, OpenCasCade has switched to LGPL too, which would have solved all our license conflicts too. But we have now a much clearer and unified license model, which should satisfy all the strictest linux distributions.

Plugins and side projects: Parts library, BOLTS, Eagle importer
The last year has seen a couple of interesting side projects emerge along FreeCAD. A Parts library has been started by the community and is slowly growing, consisting of a collection of reusable parts to add to your FreeCAD models. It can be launched and used from inside FreeCAD with the use of a macro.

Another similar but more ambitious project is BOLTS, which is also a parts library, but built from parametric scripts, able to produce a wide variety of parametric parts. BOLTS, although application-independent, can also be run from FreeCAD by launching a macro. The image below shows BOLTS running inside FreeCAD.



Another interesting external project is the EAGLE importer, which allows you to import PCB board designs made from several applications into FreeCAD.

WebGL export
From FreeCAD, you can now export your scene as a WebGL-enabled html file. This file includes an embedded three.js-based viewer that allows to inspect the scene from the web without any plugin, as long as you view it with a WebGL-capable browser.

Style Sheets
FreeCAD becomes even more customizable in 0.14, with the addition of Style Sheets being used to control the background image in the main window. No longer is the user stuck with the grey stone background. Almost any image, picture or custom tile may be used to fill the background space in FreeCAD's main Window.



New rendering tools


The Raytracing workbench has also received some love, and its toolbar has been reworked. The "old" buttons that manually produced partial povray files have been removed (they are still there in the Raytracing menu), and you can now produce a rendering pretty much the same way as you use the Drawing workbench: You create a new project, give it a template, then fill it with views of your objects. When you are done, just hit the render button, or export it to a file that is ready to render outside of FreeCAD.

The Raytracing templates system has also been extended, and templates are now easier to manipulate and create.

Luxrender support
Together with the existing support for POV-Ray, the Raytracing workbench now also supports LuxRender. Where POV-Ray is a classical-style raytracer, that shoots rays from the camera in order to find the color of each pixel of the image, Luxrender is an unbiased renderer, which takes much longer to render scenes, but can produce much more realistic lighting.

DWG import/export
FreeCAD is now able to import and export to the DWG format, thanks to the free, multiplatform Teigha Converter. Once the Teigha Converter is installed, and its path set in the FreeCAD Draft preferences settings, FreeCAD will be able to use it to import and export dwg files, by converting them to dxf, then using the Draft dxf importer and exporter. The import and export of dwg files has therefore the same limitations as the dxf format.

Draft to Drawing works with groups
The Draft to Drawing tool, used to place Draft objects on a Drawing sheet, can now be applied on groups, allowing to create fewer View objects on the Drawing sheet. By intelligently combine your Draft objects into a couple of groups, you have a quick way to control the appearance of many objects on your page.

Dimensions recoded
The Draft Dimension tool has been fully recoded, and dimension objects now behave much better, and have gained a few new properties, allowing to fine-tune them better, such as nicer and scalable arrows, more control over the position of the text and the direction of the dimension, and, above all, better support for the Drawing Module. You can now place dimensions in any plane of the 3D space, and expect correct results when placing them on a Drawing sheet with the Draft Drawing tool.



Hatches
The Draft workbench also features a new toy: hatching. On specific Draft objects (those that form a closed shape such as closed polylines, rectangles, regular polygons or circles), it is now possible to apply hatching. Currently, only a couple of default hatch patterns are available, but since those patterns are very easy to create (they are simple svg files), and custom patterns can already be added by the user, the default collection might grow quickly. Draft objects with patterns are also faithfully supported by the Drawing workbench.



Ellipses
Support for ellipses has been added, the Draft workbench now allows you to draw full or portions of ellipses.

Chamfer
In the same fashion as fillets, that had appeared in release 013, Draft rectangles, wires and polygons now gained a chamfer property, which chamfers their angle. The chamfer is applied before the fillet,and both properties can be used together, allowing you to quickly turn a very simple wire into a complex object made of many sections.

Upgrade and downgrade recoded
The Draft Upgrade and Draft Downgrade tools, before hermetic pieces of magic, from which you were never too sure what the result would be, have been recoded, and now output much friendlier messages, informing you what has been done and why. They are now also available to python scripting, not only as a whole, but also their internal operations, so you can precisely order a certain upgrade type to be performed.

Facebinder
A new Draft Facebinder tool has been added, that does a very simple but potentially very useful operation: It gathers any number of selected faces from different objects, and creates a new object from these faces. The new object keeps links to the original objects, so any change in them is reflected in the facebinder object. This should prove useful above all for architectural objects, where you can now construct new objects from the faces of several others.

Shape strings
The Draft ShapeString tool creates planar objects from a text and a truetype font. These objects, unlike common annotations such as the Draft Text, are real 3D objects, can be extruded, and can therefore be used to create engravings and other kinds of 3D objects with text in relief.

Full list
The full list of bugfixes and new features can be read on http://freecadweb.org/tracker/roadmap_page.php