[OpenSCAD] Pointers on writing an OpenSCAD extension

Bryan Bishop kanzure at gmail.com
Thu Feb 11 03:15:05 CET 2010


On Wed, Feb 10, 2010 at 8:09 PM, Marius Kintel wrote:
> On Feb 11, 2010, at 02:50 , Bryan Bishop wrote:
>> Not quite what's going on here. Think of it more as pythonOCC as
>> bindings for python to OpenCASCADE (the kernel). Then, I'm considering
>> integrating OpenSCAD with pythonOCC so that it can spit out
>> information from the SCAD format to the internal OCC format so that it
>> can eventually be exported to STEP, IGES, brep, etc.
>>
>
> I see. In that case, and since OpenCascade is a C++ library, I would guess
> it's easier to hook up an OpenCascade exporter into OpenSCAD using the
> normal C++ API.

The documentation is absolutely terrible, that's why I was figuring a
prototype in python would be easier. But either way.

> As long as OpenCascade allows for building CSG trees out of polygonal
> manifold meshes, the worst case would be hooking up to the mesh class
> (PolySet) in OpenSCAD and use these as leaf nodes in the CSG tree. It's

I don't think we should use the meshes. Let's instead just look at the
actual objects (circles, spheres, etc.) and conver those to the same
objects used in OCC (i.e.,
OCC.BRepBuilderAPI.BRepBuilderAPI_MakeSphere).

> always possible to dig deeper and get access to true primitives, given that
> operations like extrusions are allowed on such (2D) primitives in
> OpenCascade.
>
> Until the inner workings of OpenSCAD is a bit cleaner, this would involve
> some hacking, but I'd be happy to support such an endaevor at the OpenSCAD
> end of things.
>
> As I mentioned earlier, I don't know anything about OpenCascade, so I would
> be more comfortable about this if someone did a proof-of-concept by
> remodeling some representative OpenSCAD examples using OpenCascade data
> structures.

Just point me where in the SCAD source code.

- Bryan
http://heybryan.org/
1 512 203 0507


More information about the Openscad mailing list