- Encounter hull request with objects to be hulled on Object Stack
- Mesh the Objects to be hulled.
- Pass Meshed Objects and hull request to command line OpenSCAD executable
- Receive results from OpenSCAD as Mesh or DXF for 2D operations
- Incorporate into FreeCAD document
Now my understanding is that OpenSCAD nowadays uses GCAL & OpenCSG http://opencsg.org under the covers, so one question I have is why don't we try and bypass the middle man and use OpenCSG directly i.e.
- Encounter hull request with objects to be hulled on Object Stack
- Mesh the Objects to be Hulled, could this be passed off to n threads where n is the number of objects to be hulled?
- Call OpenCSG directly to perform the Hull request
- Process resulting Mesh from OpenCSG thus avoiding all the file transfers etc.
There are research papers on parrallising 3D hull operations, so if going down this path it would be a good idea to allow for plugging in even better solutions that used CUDA say. i.e NVIDIA Jetson Nano runs Linux right so why not an option that exploited with FreeCAD running on it.
Research Papers