Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Osss cad


Published on

Review of Open Source and other Free CAD Resources

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Osss cad

  1. 1. Open Source Scientific Software (OSSS) Group at Open Source Software Review: CAD Options for Linux Systems Version: May 1, 2011 Author and © : Charles Warner, Panama➔ This group provides a forum to introduce useful Open Source Scientific Software (OSSS) to the community as well as a forum for mutual support and the exchange of ideas and experiences.➔ If you like, join our group at
  2. 2. Open Source Scientific Software (OSSS) Group at ResearchGate.net1 IntroductionTechnical drawing, or "Drafting", or "Mechanical Drawing" is all about putting ideas into aformat such that the ideas can be readily communicated to others. Whether done by handon a drawing board with straightedges, compasses and other drawing aids, or done on acomputer, the purpose is the same- to record information in a format that is easilycommunicated. Just as there are many different audiences with which one wishes tocommunicate, there are many different styles of graphical representation. Three-dimensional rendering has been around for a long time, with varying degrees ofimportance in different industrial sectors, but modern technology is easing the process ofgenerating renderings from more traditional orthographic representations. With modernCNC manufacturing capabilities, new criteria are defined- how to send instructions to thecomputer driving the manufacturing process see separate OpenSource Software Review,“From CAD to FAB”, for more information on generating code for CAM controllers). Onething has not changed, however. It still requires a great deal of time and dedication for adrafts-person to develop professional level skills, no matter whether they use the computeror the drawing board. Access to software that takes some of the tedium out of the processdoes not automatically make one a skilled practitioner.The CAD universe is dominated by very few commercial packages. These include: ➢ The Autodesk suite, including AutoCAD and Inventor ➢ Solidworks ➢ Pro/E ➢ CatiaA single “seat” for the more popular of these packages can cost several thousand dollars,which can put such solutions out of the practical reach of the independent engineer, or thestudent wishing to expand his or her skill level. This also tends to limit the educationalopportunities at the secondary education level, where introduction to basic tools betterprepare a student for university study. Thus, there appears to be a market segment notbeing addressed by the major CAD software vendors- the low cost solution for the casualor hobbyist user, or the poor student who cant afford a full license.The reader should bear in mind that I have a preference for the Linux operating system, somost of this analysis is going to try to relate solutions for that environment. Since theLinux environment is rather challenged with respect to traditional CAD solutions, we willalso be looking at solutions designed for other platforms that have functionality under avirtualization or emulation solution. True, modern technology is moving towards freeing usfrom dependence on a single operating system, with dual-booting, virtualization, cross-platform capabilities, cloud computing, etc. making it less and less important whichoperating system we chose as our primary platform. But this does not preclude the needfor cost-effective solutions tailored to specific needs that may diverge from mainstreamapplications. Open Source Software Review: CAD Options for Linux Systems
  3. 3. Open Source Scientific Software (OSSS) Group at ResearchGate.netBefore we have a look at the various packages available, we need to address the subjectof file formats. We are, after all, concerned with communicating information, and, if onesinterlocutor can not open a particular file, one does not achieve communication. Wikipediaoffers a partial list of more than 30 popular CAD formats, many of which are proprietary. Ifone is working within a large organization where information is shared primarily in-house,then the choice of formats is not really an issue- everyone has access to the samesoftware. However, when collaborating with others outside the organization, or passinginformation to a particular analysis package, the document format can be a critical issue.While there are any number of "translators" available, we have found that not all of themare as effective as one might wish- I have often encounter problems with misplacedelements, lines that dont meet up, and poorly-rendered text. If the purpose of convertingthe original format was to allow for some sort of modification to the original drawing, thereis no guarantee that the changes will be incorporated properly when the altered drawing isre-converted to the original format. I have done a bit of analysis regarding the formats withwhich I deal most often (which may or may not be similar to what others may encounter)suggests that the most important formats are: ➢ *.dwg ➢ *.dxf ➢ *.3ds from SolidWorks ➢ *.stp ➢ *.stl ➢ *.iges ➢ *.unv ➢ *.brep ➢ *.msh ➢ *.med ➢ *.g (specific to a package BrlCAD (, which is important for my purposes partly due to the rather extensive and well-executed file format converters that come with the package)Note that some of the formats considered important here are specialized for applicationsbeyond basic CAD (i.e., Finite Element meshing, for example). The reason for includingthem will become obvious as we progress through the different packages.Another factor to consider is, are the files in an ASCII or binary format? This is importantwhen dealing with *.dxf files especially. In fact, as standards go, *.dxf is probably the mostdifficult to deal with, because there are at least six basic versions of this format in commonuse, and not all of them are compatible with the open standards. Trial and error rule the Open Source Software Review: CAD Options for Linux Systems
  4. 4. Open Source Scientific Software (OSSS) Group at ResearchGate.netday. We also find that the *.stl format is important for such things as FEA analysis andCAM development.2 2D Drafting SolutionsThere are those who feel that traditional 2D drafting is of limited value in the modern world,but this suggests to me that they have little knowledge of the real world. Again, technicaldrawing is about communicating information in a useful format. There are such things asdimensions, tolerances, surface finish specifications, corner radii, bevels or chamfers, weldspecifications, and the list could go on indefinitely, that are very difficult to illustrate with arendered three-dimensional view. When communicating with a machine shop over thefabrication of an item, a pretty picture will only get you so far. It is also generally mucheasier for a practitioner with experience in 2D CAD to migrate to more complicated 3Dpackages.So, what are the available choices, what are they capable of, and where does one getthem? We begin with traditional 2D CAD, where the novice or casual user is most likelyto have the strongest interest (especially since the learning curve for such packages issignificantly less than the learning curve for 3D rendering packages):NOTE: This is not intended to be a complete list of all available options. It reflectsprimarily the authors personal experience.DraftSight (Dassault Sytèmes)DraftSight is a professional-grade, free 2D CAD product for users who want a better wayto create, edit and view DWG files. DraftSight comes from Dassault Systemès, who alsoprovide Catia and SolidWorks. It is easy to use and is available to download and activatefor free (Standalone license. Activation required). DraftSight supports Microsoft®Windows (XP through Windows 7) and Linux (*.deb package available for Ubuntu; *.rmppackage available for Fedora, OpenSuse, and Mandriva). Read and write support for*.dwg and *.dxf formats (R2000 through R14, ASCII or binary for *.dxf). Save as .wmf,.jpeg, .pdf, .png, .sld, .svg, .tif, & .stl file formats. This is about as close as one gets to thecapabilities of the major commercial packages. Open Source Software Review: CAD Options for Linux Systems
  5. 5. Open Source Scientific Software (OSSS) Group at ResearchGate.netIllustration 1: DraftSight Running In Ubuntu 10.04 64 bitQCAD (RibbonSoft, GmbH)QCAD is an application for computer aided drafting in two dimensions (2d). With QCADyou can create technical drawings such as plans for buildings, interiors, mechanical partsor schemas and diagrams. QCAD works on Windows, Mac OS X and many Linux andUnix Systems. The source code of the QCAD community edition is released under theGPL (Open Source) license. Features include: ➢ DXF input/output (R12 and DXF 200x; BMP, JPEG, PNG, (import and export as bitmaps); SVG (export); High quality PDF (export) ➢ Part library with over 4800 CAD parts (extensible with user defined drawings and symbols) ➢ Mathematical Expressions ➢ Built-in scripting language (an ECMA compliant language called QSA. Those familiar with Java, C++, C# or JavaScript will immediately be able to code the basic control structures) ➢ Excellent documentation ➢ Available in Spanish Open Source Software Review: CAD Options for Linux Systems
  6. 6. Open Source Scientific Software (OSSS) Group at ResearchGate.netQCAD is available in both a free, OpenSource version, and a “Professional” versionavailable in a variety of packaging options for $34 to $82.This package is included in the CAELinux 2010 distribution, and is fairly intuitive and easyto learn and use. The documentation is by far the best available for Linux-based CADsolutions.Illustration 2: qCAD screen shotSagCADThis is another option that is included with CAELinux 2010, but we find the documentation(machine-translated from the original Japanese) to be rather obscure. While we do notrecommend it, there may be others who find it appropriate.PythonCAD Open Source Software Review: CAD Options for Linux Systems
  7. 7. Open Source Scientific Software (OSSS) Group at ResearchGate.netThis package written in Python. The PythonCAD project aims to produce a scriptable,open-source, intuitive, cross platform CAD package. Undergoing significant rewrite at thistime. Current versions are not nearly as sophisticated as other options, but the Pythonbase may be attractive to those whose primary goal is an extensible package.Illustration 3: PythonCAD Screen ShotA more complete list of Linux-based CAD programs can be found here. This list includes anumber of packages still in various stages of development, and special-interest packagesthat may be of interest to some. Among the packages from the list that may be of moregeneral interest are:BricscadBricscad, the number one DWG CAD alternative, is finally available as a native Linuxversion. It is the most advanced CAD platform available for Linux. It provides the Open Source Software Review: CAD Options for Linux Systems
  8. 8. Open Source Scientific Software (OSSS) Group at ResearchGate.netengineering community an open door to Linux. A commercial package, not OpenSource.JCadThis is a smart 2D CAD application written completely in Java. It uses the AutoCAD DXF,which is the most widely-used 2D CAD format, as its native format.ME10This is a 2D professional, and fully featured drafting and design package. ME10s partsconcept simplifies the design and modification of assemblies through a hierarchical partsstructure. A parts structure editor helps maintain control even in the most complexassembly structures. A commercial package, not OpenSource.OCADisThis is a 2D CAD system for Linux. It has all the basic drawing objects implemented: line,arc, circle and more. It supports HPGL (export), DXF (import and export), PostScriptoutput.VariCADA mechanical engineering CAD system. It includes functions for 3D modeling, 2D drawing,editing, transformations, working with user defined objects, block, group and symbolcreating capabilities. The whole system is very customizable and widely open. Acommercial package, not OpenSource.So far, we have examined only the Linux-based packages. There are many more optionsavailable for Windows platforms, and most of these can be run on a Linux machine usingeither the Wine emulator, or a virtual machine such as VirtualBox, with a Windows guestsystem installed. There are many more options than we can possibly detail in areasonably-sized document, so we limit the list to only those with which we have somefamiliarity. The Wine emulator allows one to run many Windows programs without theneed for a Windows installation. The AppDB database (accessible from the Wine homepage) provides additional guidance on how well various applications work in the emulatorenvironment. Among our favorites are:IMSI/DesignIMSI has been around for a couple of decades now, offering consistently good, full-featured, low-priced CAD packages. We have used their TurboCAD products for years,and have recently started using the DoubleCAD XT free version- another great productcompatible with most *.dwg and *.dxf formats. Purely a Windows solution, although wehave an older version fully functional in VirtualBox on our Ubuntu machine. TurboCAD There is still available on line a free version of TurboCAD LE at this link. Note that this version probably wont work well with later Windows versions, but it runs well in Wine on my Ubuntu box. The symbols library is somewhat limited, compared to Open Source Software Review: CAD Options for Linux Systems
  9. 9. Open Source Scientific Software (OSSS) Group at what is available for the full packages. TurboCAD has traditionally sported their own file format (*.tcw), but it also supports older *.dwg and *.dxf formats (and others a bit more obscure). It is unlikely to support newer versions of these formats. Newer versions of TurboCAD are available here, at prices ranging from $150 to $2000, depending on the version chosen. They do offer educational discounts. DoubleCAD XT This is a package I use on my one remaining Windows box (stuck in Windows XP for as long as I can hold out). A limited version is available for free with an unrestricted use license, or the full (Pro) version is available for $695. This is probably the most reasonable solution for Windows XP or newer. This application is reported to be unusable in Wine, although it should run well in a Windows virtual machine.Illustration 4: DoubleCAD XT screen shot Open Source Software Review: CAD Options for Linux Systems
  10. 10. Open Source Scientific Software (OSSS) Group at ResearchGate.netCadStdCadStd is a general purpose, easy to learn CAD/drafting program for creating professionalquality mechanical designs, house plans, blueprints, schematics and charts utilizing ANSIdrawing standards. The Lite version is free and can read any drawing created by the Proversion. CadStd Lite can export files as DXF so you can share your drawings...The Proversion can create isometric projections from orthographic views, and has powerfulcommands like offset, trim, fillet and chamfer. Export drawings in formats like DXF, SVG,HPGL/1. Runs in Wine. The Pro version costs $37.50. Illustration 5: CadStd Screen ShotsAutoCADWhat, you may be wondering, is AutoCAD doing on a list of reasonably priced CADsoftware? Actually, AutoCAD offers a couple of different licensing options that could resultin reasonably-priced solutions for those who do not need the full suite of capabilitiesavailable in their full package. For students, they offer a special, free license for many oftheir products. One must have some demonstrable relationship with an appropriateinstitution, and there are apparently geographical limitations as to where the offers areavailable, but this is a tremendous opportunity for students. AutoCAD has been around fora long, long time, and has for years defined the standards against which CAD softwarehas been evaluated. If you are a student, this may be the appropriate route for you. Otherthan the Student licenses, however, even their LT version, at $1200 is a bit beyond what Open Source Software Review: CAD Options for Linux Systems
  11. 11. Open Source Scientific Software (OSSS) Group at ResearchGate.netwe consider a "reasonable" price for the causal user. This is a Windows solution (XP orVista, with compatibility testing with Windows 7 under way), although Autodesk now offersa MAC OS version as well.3 3D Drafting Solutions3D CAD covers a very broad range of possible applications, from simple modeling ofobjects in 3 dimensions, to modeling the interfaces between various components of anassembly to generating a model for further analysis such as Finite Element mechanicaland thermal stress analysis, linear and non-linear dynamics, and fluid dynamics torendering for animations. We have focused primarily on solutions that would be of interestto the engineering profession, and only those solutions with which we have a workingknowledge and which are capable of professional results competitive with the best of thecommercial packages. There are a plethora of other options available, but to provide a fullassessment of all the variations available would be a daunting task, and most likely wouldbe outdated as soon as it was completed. So, here are our favorites:SALOMESALOME, the foundation of the CAELinux 2010 package, is an OpenSource package thatprovides a generic platform for Pre- and Post-Processing for numerical simulation. It isbased on an open and flexible architecture made of reusable components. SALOME is across-platform solution. It is distributed as open-source software under the terms of theGNU LGPL license. SALOME can be used as standalone application for generation ofCAD models, their preparation for numerical calculations and post-processing of thecalculation results. The Salome-MECA version is integrated with the Code_Aster multi-physics FE analysis package and the Code_Saturne 3D CFD (Computed Fluid Dynamics)solver, such that one need not export possibly incompatible formats between applications,which is the primary reason it is first on the list. The 3D solid modeling capabilities areintuitive and easy to learn. Some of the functions native to the platform include: ➢ Create/modify, import/export (IGES, STEP, BREP), repair/clean CAD models ➢ Mesh CAD models, edit mesh, check mesh quality, import/export mesh (MED, UNV, DAT, STL) ➢ Handle physical properties and quantities attached to geometrical items ➢ Perform computation using one or more external solvers (coupling) ➢ Display computation results (scalar, vectorial) Open Source Software Review: CAD Options for Linux Systems
  12. 12. Open Source Scientific Software (OSSS) Group at ResearchGate.netIllustration 6: Solid Modeling in SalomeThis is by far the most versatile and useful 3D package for the engineer.BrlCADBRL-CAD (developed at the U.S. Army Ballistic Research Laboratory (BRL) (now the U.S.Army Research Laboratory [ARL])) is a powerful cross-platform Open Sourcecombinatorial Constructive Solid Geometry (CSG) solid modeling system that includesinteractive 3D solid geometry editing, high-performance ray-tracing support for renderingand geometric analysis, ... path-tracing and photon mapping support for realistic imagesynthesis, ... an embedded scripting interface, and libraries for robust high-performancegeometric representation and analysis … BRL-CAD is the primary solid modeling CADsystem used by the U.S. military to model weapons systems for vulnerability and lethalityanalyses. The solid modeling system is frequently used in a wide range of military,academic, and industrial applications including in the design and analysis of vehicles,mechanical parts, and architecture.One of the features most useful with this package is the format conversion facilitiesincluded in the package. While internally, BrlCAD utilizes the unique *.g binary format, thepackage provides very efficient and accurate conversion utilities for the following CADformats: Open Source Software Review: CAD Options for Linux Systems
  13. 13. Open Source Scientific Software (OSSS) Group at ResearchGate.netI have actually used these converters to convert from one format to *.g and then toanother format for compatibility with other packages. Illustration 7: BrlCAD Screen shotFreeCADFreeCAD is a general purpose OpenSource 3D CAD/MCAD/CAx/CAE/PLM modeler, Open Source Software Review: CAD Options for Linux Systems
  14. 14. Open Source Scientific Software (OSSS) Group at ResearchGate.netaimed directly at mechanical engineering and product design ... It is a feature-basedparametric modeler with a modular software architecture which makes it easy to provideadditional functionality without modifying the core system.Illustration 8: freeCAD screen shotFreeCAD is based on OpenCasCade, a powerful geometry kernel, features an OpenInventor-compliant 3D scene representation model provided by the Coin 3D library, and abroad python API. The Python interface provides extensive extensibility capabilities to thebasic package. FreeCAD runs exactly the same way on Windows, Mac OSX and Linuxplatforms. Features include: ➢ Complete OpenCasCade-based geometry kernel allowing complex 3D operations on complex shape types ➢ A modular architecture that allow plugins (modules) to add functionality to the core application. Those extensions can be as complex as whole new applications or as simple as python scripts or self-recorded macros ➢ A full parametric model allowing any type of parameter-driven custom objects, that can even be fully programmed in python ➢ Import/export to standard formats such as STEP, IGES, OBJ, DXF, SVG, U3D or Open Source Software Review: CAD Options for Linux Systems
  15. 15. Open Source Scientific Software (OSSS) Group at STLBlenderBlender is a free open source 3D content creation suite, available for all major operatingsystems under the GNU General Public License. Blender ... allows the creation of a broadrange of 2D and 3D content. Blender provides a broad spectrum of modeling, texturing,lighting, animation and video post-processing functionality in one package. Through itsopen architecture, Blender provides cross-platform interoperability, extensibility, anincredibly small footprint, and a tightly integrated work flow. Blender is one of the mostpopular Open Source 3D graphics applications in the world.While essentially aimed world-wide at media professionals and artists, Blender can beused for technical rendering as well as a graphical front end to a variety of multi-physicsanalysis packages. On his web site, Robert Burke provides examples and tutorials forsuch applications:Illustration 9: A Robert Burke Image using Blender Open Source Software Review: CAD Options for Linux Systems
  16. 16. Open Source Scientific Software (OSSS) Group at Illustration 10: And another Robert Burke rendering using BlenderKey features: • Fully integrated creation suite, offering a broad range of essential tools for the creation of 3D content • High quality 3D architecture enabling fast and efficient creation work-flow. • User community support by forums for questions, answers, and critique at and news services at • Small executable size, easy distribution.While Blender is a very sophisticated and difficult to learn package, it offers phenomenal3D rendering capabilities. Open Source Software Review: CAD Options for Linux Systems