April 5, 2011

Professional Quality CAD on Linux with DraftSight

Many computer-aided design (CAD) users in the Linux community were thrilled recently with the beta release of DraftSight, a freeware (meaning zero-cost-but-proprietary) CAD package for Linux, Windows, and Mac OS X. DraftSight's creator, Dassault Systèmes, is a well-known CAD shop most famous for its Windows product SolidWorks. Although this new app is not open source, it is the first professional-level package available for free on Linux that can read and write the industry-standard .DWG file format. Free software CAD still has a long way to go, but for now DraftSight offers Linux users a rare glimmer of hope.DraftSight File Dialog

Getting it and Getting Started

DraftSight builds are available in both Debian and RPM packages on the product's home page. The beta weighs in at a beefy 68.8 MB, with a prodigious list of dependencies, but it is a real, native Linux application and not a WINE port. The dependencies are standard GUI fare — Freetype, Cairo, GTK+, D-Bus, and so forth, so any up-to-date system should have no trouble installing it. Still, it might have been nice to have the dependencies listed on the web site, although that is par for the course — Dassault's DraftSight site has an annoying habit of providing the majority of its content (including the FAQ and Getting Started Guide) as downloadable PDFs rather than simple HTML.

You must also click away your assent to a terms-and-conditions page to begin the download, another terms-and-conditions window to install the package, and yet a third to launch the app for the first time. At least no one will confuse it for open source software. The package installs itself as a fully native desktop Linux application, including menu shortcuts and registering itself as the default application to open .DWG files downloaded by Firefox.

Given my own limited experience with CAD, I was grateful that Dassault provides a Getting Started guide, but PDF rendering problems left large sections of the guide unreadable. Still, for the most part I found the interface easy to figure out as I went along, thanks to status-area tooltips and some clean UI layout. Object transformation tools are on the right, for example, while object creation tools are on the left. Object properties are exposed in a structured sidebar to the immediate left of the drawing canvas, and quite simple to figure out.

DraftSight is a 2D-only CAD package, so the ubiquitous spur-gear example file you see in most CAD app screenshots is a no-go. But that still leaves tons of features, including multi-layer drawings, transformations that are simple to perform by hand but have precise measurements, and a clean separation between the model and any output renderings you make of the model, which are placed into separate tabs. You can thus export individual layers separately, add text annotations, and so on.DraftSight

DraftSight focuses exclusively on the DWG file format made popular by AutoCAD, which probably explains, at least in part, why Dassault released the app. Dassault and other AutoCAD competitors have been locked in a protracted legal battle with AutoCAD's creator Autodesk for several years about the format, which Autodesk did not create and which several others have reverse-engineered. Considering the success of SolidWorks, after all, it might seem peculiar for Dassault to release a free CAD tool to compete with it. But the software company is marketing DraftSight at the low-end of the market, and emphasizing its usefulness for exchanging, editing, and sharing DWG files with other users. More on why that's useful in a second.

If you are simply looking to draw up a house plan, work out how to cut up plywood for your next project, or create other relatively simple designs, DraftSight is a good fit. It's easy to use an hard to make major mistakes with. Furthermore, you can find tons of woodworking and architectural plans created by other individuals on the web, and 99.99 percent of the time, they will be in DWG format. That makes DraftSight a useful tool to have in your application menu.

Make no mistake, however: DraftSight is still closed, proprietary software. Technically, I believe it falls under the "register-ware" category, because the program pops up a dialog box asking for an email address when you first print or save a file. You can decline to enter one, but reportedly the app will start asking again in six months, then again in a year, and so on.

Formats and Alternatives

That plethora of DWG files roaming in the wild is the chief reason why DraftSight is a win for Linux users. There are other, free software CAD programs for our favorite OS that offer partial or no DWG support at all, relying on their own format or on less widespread standards, like the reduced-functionality DXF format created by Autodesk specifically for information exchange. If you don't need DWG support, other apps like BRL-CAD and QCAD are a good place to get started. At the other end of the spectrum is Bricscad, a high-priced commercial CAD suite for Linux that does offer DWG support.

As frustrating as it is, those are the options right now for CAD on Linux: non-free software that supports DWG, or free software that doesn't. All this stems back to the need to reverse-engineer the DWG file format itself. An independent group called the Open Design Alliance (ODA) did just that, and created a Linux-compatible library called OpenDWG. Yet as is too often the case, the organization and product do not live up to their names. You must be a paid-up member of the ODA in order to access its software, and you are not allowed to share it with others.

The Free Software Foundation (FSF) saw this rock-and-a-hard-place situation and decided it merited some action, so it lists LibreDWG as one of its high-priority software projects. LibreDWG is a DWG read/write library built from reverse-engineering and adding onto the work of some older free software DWG work. Despite its high-priority status, it looks like LibreDWG is still a ways away from a stable release.

That means that, like it or not, a closed-source freeware app like DraftSight remains Linux users' best bet for reading, editing, and creating DWG CAD projects. Still, it is a solid application, running natively on Linux, and it works well. For some people, that makes it a step-in-the-right-direction, but for a lot of others, that's all you can ask for.

Click Here!