4 ms·
There're different point of views: - If you're 3D modeller, then yes, you're operate in terms of splines, surfaces, NURBS curves, etc. 3D model is your product
by sgdread 12y ago
There're different point of views:
- If you're 3D modeller, then yes, you're operate in terms of splines, surfaces, NURBS curves, etc. 3D model is your product.
- If you're mechanical engineer (and CAD usually appear in engineering context), then in most cases 3D model is just a tool to produce something useful for manufacturing. Engineer models manufacturing process by applying specific primitive operations in specific order(order is important) which will emulate available manufacturing operations (like sweeping, drilling). In other words, when I need to add hole in a part, I don't create surface (or bunch of these - in case if hole intersects other surfaces), I just add extrusion operation; an operation tree will log info "extrusion with diameter 6 at this coordinates from base A and B", not "surface a,b and c". CAD will build all necessary surfaces for me as well as will have all necessary parameter for CNC machine. In 99%* you don't interact directly with surfaces/meshes. At least that's what you do if you work with Autodesk Mechanical Desktop/Autodesk Inventor/SolidWorks/CATIA/Unigraphics.
* 1% are rare cases when you have to deliver something really complex like auto body parts (though making those is a whole new story).
- bhouston 12y agoFunny thing, most commercial CAD tools (AutoCAD, Revit, Inventor, CATIA, SolidWorks) are built on a single C++ library from Seimens called Parasolid.
- delhanty 12y agoEx Parasolid (1989-1995), D-Cubed (1995-2000), and SolidWorks (2001-2002) dev here. Many are built on Parasolid, but many are not. Of your list only SolidWorks is built on Parasolid. Siemens own products (NX, SolidEdge) are built on Parasolid. CATIA uses its own CATIA kernel. Dassault would like to move SolidWorks to the CATIA kernel, but they will encounter user resistance. Autodesk has its own kernel ShapeManager ( http://en.wikipedia.org/wiki/ShapeManager http://en.wikipedia.org/wiki/ShapeManager ) that it uses in Inventor and probably AutoCAD and Revit. ShapeManager was forked from Acis. There was a court case over the fork. Before the fork Autodesk used to use Acis. Dassault owns Acis ( http://en.wikipedia.org/wiki/ACIS http://en.wikipedia.org/wiki/ACIS ) which is also widely used, especially amongst the smaller players. SpaceClaim uses Acis. IIRC ProEngineer has its own kernel.
- kanzure 12y agoHey would you be willing to be pestered for occasional code review for open-source CAD programs? Your particular experience with Parasolid and Solidworks is highly relevant and really lacking in the open-source CAD ecosystem... even if you don't write a line of code, just reviews would be hugely helpful. I checked your HN profile but there's no email (has to go in the profile field, alas).
- delhanty 12y agoI emailed you. Also, I just re-read your post on reverse engineering the SolidWorks format ( http://heybryan.org/solidworks_file_format.html http://heybryan.org/solidworks_file_format.html ). Re: code review - I'd have to think carefully about that - might put me in a conflicted position with my own future plans to write a lightweight modeler. I am working on reverse engineering now. We could start by swapping ideas if that would work for you... Right now, I am low on energy & time - went through burn out a few years ago and have to pace myself ...
- bhouston 12y agoAh, you are right. I overestimated Parasolid's reach, although its reach is pretty extensive as this list implies: http://en.wikipedia.org/wiki/Parasolid http://en.wikipedia.org/wiki/Parasolid I would love to pick your brain about CAD and their kernels if you had the time, give me a shout at ben@clara.io. We are looking to expand Clara.io into the CAD space and could use some advice.
- delhanty 12y agoI emailed you. Clara.io looks wicked! Also, it looks like it was a lot of hard work to write. Parasolid, Acis and ShapeManager have a lot in common because they all originate from the same Romulus family tree in Cambridge, United Kingdom. Parasolid is probably the most widely used in serious high-end CAD because it is used in SolidWorks, NX and SolidEdge. Replaying history based feature models is a very hostile evolutionary environment for a b-rep modeling kernel, so Parasolid is battle hardened in a way that would be hard for Open CASCADE say to match. If you are moving into CAD, then OnShape (VC funded cloud based MCAD by the founders of SolidWorks) might by a competitor. Do you know what they will use for their in the browser kernel? Unless they are roundtripping everything to Parasolid/Acis in the cloud like Lagoa (http://www.worldcadaccess.com/blog/2014/04/logoa-going-from-simple-rendering-to-cloud-based-cad.html http://www.worldcadaccess.com/blog/2014/04/logoa-going-from-...) that is. At the minimum, an in-the-browser sketcher would be good for cloud MCAD. I have thoughts, but not enough energy, strength and time right now to write one of those ... Edit: grammar