GNOME 3617 Published by

The twenty-fourth development release of PythonCAD, a CAD package for open-source software users, is available.

As the name implies, PythonCAD is written entirely in Python. The goal of this project is to create a fully scriptable drafting program that will match and eventually exceed features found in commercial CAD software. PythonCAD is released under the GNU Public License (GPL).



PythonCAD requires Python 2.2 or newer. The interface is GTK 2.0 based, and uses the PyGTK module for interfacing to GTK. The design of PythonCAD is built around the idea of separating the interface from the back end as much as possible. By doing this, it is hoped that both GNOME and KDE interfaces can be added to PythonCAD through usage of the appropriate Python module. Addition of other PythonCAD interfaces will depend on the availability of a Python module for that particular interface and developer interest and action.

The twenty-fourth release contains numerous improvements to the code used for constructing the user interface and the entity drawing routines. This release utilizes the GTK Action and ActionGroup classes for building and controlling the menubar and menus. Using these classes greatly implifies and enhances the ability to manipulate the menu items, and these features are used extensively in this release. Many menu choices are now activated when the functionality they provide can be used, and deactivated when their use is not possible. More enhancements of this nature will be appearing in future releases. Another significant improvement is the refactoring of the entity drawing routines. These routines are now provided as methods for each entity class, making their usage much clearer and simpler. Changing the drawing routines has allowed significant simplification of the code
responsible for drawing as well as fixing several drawing bugs. Future releases of PythonCAD will build on this change to enhance and improve the graphical behavior of the program even further. A number of PyGTK deprecation warnings that slipped by in the previous release have been removed, and a
good number of bug fixes and code enhancements are present in this release as well.

A mailing list for the development and use of PythonCAD is available. Visit the following page for information about subscribing and viewing the mailing list archive:

http://mail.python.org/mailman/listinfo/pythoncad

Visit the PythonCAD web site for more information about what PythonCAD does and aims to be:

http://www.pythoncad.org/