Draft Module

From FreeCAD Documentation
Revision as of 22:56, 6 February 2008 by Yorik (talk)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The draft Module is a work-in-progress and quite experimental module made to add basic 2d drawing functionality to FreeCAD. It is written entirely in python, and is also intended to showcase how far you can extend FreeCAD entirely in python, without even touching the source code. This module is currently developed outside of the main FreeCAD development structure.

Currently it is not really usable for production work, but already contains a couple of working basic functions. Feel free to test, and give us a feedback on the discussion page!

I also maintain a workplan of the whole thing here.


The draft Module is currently not part of the FreeCAD package, so you'll need to download it from here: http://yorik.orgfree.com/scripts/Draft.zip The zipfile here above contains just a "draft" directory. To install the module, simply place that directory into the "Mod" directory of FreeCAD.

Please note that the draft module requires two specific python modules to be installed and working on your system, PyQt4 and Pyvy. Instructions for installing or compiling these modules can be found on the extra python modules page.

Import functions

Autodesk DXF

Menu: File > Open

This function opens a DXF file (any version from 12 to 2007) in a new drawing. The color and linetype of objects is currently not used. DXF object types currently read by this script + implementation in FreeCAD:

  • line: read and converted to FreeCAD Polygon
  • lwpolyline: read and converted to FreeCAD Polygon w/ arcs straigthened
  • text: read but no implementation in FreeCAD
  • mtext: read but no implementation in FreeCAD
  • circle: read and converted to FreeCAD Circle
  • arc: read and converted to FreeCAD Circle
  • layer: read and layers containing objects are conveted to FreeCAD Group
  • block_record: read but no implementation in FreeCAD


Menu: File > Open

A function to import SVG files as workable 2D objects, in opposition to the built-in drawing module which imports svg files as sheet drawings. SVG objects that get imported at the moment:

  • PATH objects with M, C, L or A commands: converted to FreeCAD polygon
  • RECT objects: converted to FreeCAD polygon

Drawing functions