antimony icon indicating copy to clipboard operation
antimony copied to clipboard

Open Source CAD exchange format.

Open Evil-Spirit opened this issue 9 years ago • 2 comments

We are working hard on SolveSpace. SolveSpace use Mesh/NURBS for geometry, but has history-based approaches. You are working on a good tool which is really not like something else. You have used F-Rep for internal things. But you have also something like history based approach. There is also OpenSCAD which uses pixel operations for booleans as fast visualization, and CGAL as boolean operations for generating some STL meshes. There is also FreeCAD which is working on NURBS and has history-based approaches.

So, what do you think about making the ultimate exchange format for history-based geometry. This format must be not snapped to interal format (mesh, b-rep, f-rep, etc), just geometry with building process. It must operate on 2d primitives, 2d/3d sketches of primitives and operations (extrusion, revolve, etc) with combination function (union, subtract, etc).

My first draft:

<cad>
 <sketches>
  <sketch type="2d" id="1">
   <contour id="1" combine="add">
    <start point="0 0"/>
    <line point="0 10"/>
    <line point="10 10"/>
    <line/><!-- close contour -->
   </contour>
   <!-- circle is contour itself -->
   <circle id="2" op="sub" center="5 5" radius="1">
  </sketch>
 </sketches>

 <bodies>
  <body id="1">
   <feature id="1" op="extrude" combine="add">
    <sketch id="1" transform="mtx"/>
   </feature>
  </body>
 </bodies>

</cad>

We can use some general approaches from dxf and svg.

Can you think about it? IRC: #make-cad-format cross-conversations: https://github.com/openscad/openscad/issues/1650 https://github.com/mkeeter/antimony/issues/158 http://forum.freecadweb.org/viewtopic.php?f=10&t=15885

Evil-Spirit avatar May 24 '16 13:05 Evil-Spirit

IRC: #make-cad-format

Evil-Spirit avatar May 25 '16 10:05 Evil-Spirit

(I'll reply on the OpenSCAD issue, since that's the most active discussion)

mkeeter avatar May 25 '16 13:05 mkeeter