CAD for mechanical design

Matt
2009-02-11
2013-04-22
  • Matt
    Matt
    2009-02-11

    Hello,

    An open source 2d / 3d CAD software sure would be appreciated and inspirational for folks developing mechanical parts and assemblies.  I recently found a document entitled "BRL-CAD Project Ideas", and without having any programming knowledge, after reading cad forums etc. about the linux cad programmes available, perhaps I imagine BRL-CAD is heading in a direction that could assist with my designing of solid objects.  Lack of dimensioning, the command-line rather than friendly gui, inability to work with imported design files since the BRL solid modelling is a distinctly different approach than surface modelling,  these are some of the issues I imagine would deter the likes of me (optimistic newbie wishing for good and free design tools) from downloading BRL.  However most of these, I think, are areas already being worked on.  From what I can gather there are quite a few other people with similar (ie. mechanical design) interests who are quite dissatisfied wth the present options, expensive autocad etc. and performance limited freebies.  We should be grateful for the options we have of course.  However I know at least myself would be really especially delighted to be able to work with something the likes of BRL-CAD if the suite could resemble to an extent Varicad for 3d, and 3d to 2d, and perhaps Qcad for 2d designing.  In other words a free Varicad with a more intuitive stronger 2d environment, and being able to import/export STEP or DWG files (etc.) would also be helpful.  There are some free packages for simulating multibody dynamics eg. EasyDyn & MBDyn.  If these could be associated with BRL then mechanical systems could be thoroughly explored  -  parts designed from 3d to 2d or perhaps the other way 2d to 3d, assemblies of parts investigated on our computer screens, designs printed or faxed to manufacturers etc.  Some parts I wish to design would then be meshed for evaluation with free cfd packages, perhaps CAElinux with Salome, OpenFOAM, code Aster and Elmer etc would assist with this.  Anyway, if in the future mechanical products could be designed within BRL-CAD prior to evaluation or refinement in other Linux environments, well this would be completely excellent.  Is BRL-CAD sort of heading in this direction?  (Specifically I wish to show an assembly comprising a compressed air vortex heat-exchanger, pneumatic valves, a pneumatic stepping-motor driven ball screw, or perhaps ball spline, supporting structures, pipes, tubes.  Parts to eventually be injection molded.  ?) 

    Thanks for any info.

     
    • Sean Morrison
      Sean Morrison
      2009-02-12

      Short answer:

      Yes, BRL-CAD is sort of heading in that direction.  See [1] for a list of our major project priorities:

      [1] http://brlcad.org/BRL-CAD_Priorities.png

      Longer answer:

      Open source development is generally very slow.  Much slower than you'd expect and much slower than commercial software development.  It's just the way it is, even when there are developers paid to contribute ('why' is off-topic for this thread).  BRL-CAD's lack of features, polish, pretty GUI, usability, learning curve, etc, are not really a factor of direction or desire but of effort.  I'd love to see BRL-CAD supplant every commercial CAD system regardless of whether the purpose is for design, analysis, 2D modeling, 3D modeling, drafting, machining, engineering purposes, whatever.

      BRL-CAD has more than 400 staff years of development effort invested over a more than 20-year development lifetime, but that pales in comparison to some other commercial CAD systems that put more than that into their system every year.  We are by far the most developed open source CAD system (by *FAR* the most), but we still have to pick and choose our battles very carefully because we don't have unlimited resources.  The only way to increase our productivity is by having more people contribute (notably, more developers) and there is a limit to how fast any group can scale up new contributors without losing project focus (see Mythical Man Month).  We arguably have unlimited time as open source software, but that is a much more involved discussion about development velocities and prioritization and I'd be digressing from the main point.  Basically, it takes a lot of time and effort to implement anything and we have only so much effort to expend within a limited timeframe, so we've historically focused on raw capabilities over usability matters.  That said, this has recently changed.

      Since BRL-CAD became open source software, usability naturally became much higher priority given the more varied audience but the resources that can be invested and contributors to the project remains relatively constant.  So working on a new GUI is now *very* important.  Working on making the tools easier to use is also important.  None of that happens overnight, though.  Just to implement a full production-ready, documented, and tested STEP importer/exporter capability, for example, is a couple staff-years of effort.  We should have an importer working by this fall.

      Much to do, but thanks for the feedback and consideration.

      Cheers!
      Sean

       
    • Sean Morrison
      Sean Morrison
      2009-04-22

      Matt,

      Thanks for the feedback.  It's quite true that there are a lot of aspects of BRL-CAD that easily scare away many potential users, particularly issues related to BRL-CAD having limited intuitive usability for new users.  The funded development heritage of BRL-CAD frankly did not require or allow for a lot of effort to be put forth on making BRL-CAD "easy" to use and still is generally considered an "expert interface" that has a steep learning curve.  That is, however, something that we're very much trying to fix.

      I narrowed down on our primary project priorities over the next couple years into four primary focus areas and describe them here:  http://brlcad.org/BRL-CAD_Priorities.png

      With a package and development team as diverse as ours, there will certainly be other on-going activities and specific development projects (e.g., STEP support).  Those four areas of working on a new GUI, BREP/NURBS support, geometry services, and growing our open source community, are, however, pretty much our main project priorities.

      Specific to your particular question about what directions we're heading, hopefully you can see how our priorities tie in to your needs.  The GUI in particular is at the heart of making things easier to use but is also probably the most complex of the four focus areas.  BRL-CAD already has the functionality to do just about everything you suggest, but that power is locked up in a lot of expert interfaces, complex APIs, and specific tools.

      As for getting involved, I hope you do.  Many talk and want, but far fewer actually contribute.  The best way you can get involved is opening up a dialog and staying engaged.  Find something to work on (whatever that may be), and go to town!  Thanks again for the feedback.

      Cheers!
      Sean

       
    • Sean Morrison
      Sean Morrison
      2009-04-22

      Oh yeah, also meant to add that "yes, I'm intentionally replying twice." :-)

      I had those extra thoughts on your comments and wanted to better articulate enough on how your comments tie in to our priority areas.  Cya.