[OpenSCAD] Feature Requests

Marius Kintel marius at kintel.net
Sun Feb 14 15:42:11 CET 2010

There are a few separate components to this.

1) The commands/queries we want to send to OpenSCAD are not  
(primarily) OpenSCAD commands, but application/GUI controls; opening/ 
saving files, reloading, render, export, edit text. Since OpenSCAD  
either can have multiple open documents or multiple instances  
(depending on whether the user prefers MDI mode or not), we also need  
to be able to query/select the correct document/window/instance.
-> We need to expose some kind of DOM for the application.

2) We need a transport mechanism for sending these commands/queries to  
OpenSCAD. Domain sockets, TCP sockets, file monitoring has been  
mentioned as alternatives. On Mac, this is standardized using  
AppleEvents, which is a good solution for Mac since we can plug this  
directly into any other scripting framework already existing. For  
Windows and Linux I don't know about standardized ways of doing this.  
The MDI/pid case also complicates this.
-> It could make sense to decouple 1) from 2)

3) We might want a scripting language for sending the commands/queries  
in 1) over the transport in 2). bash was mentioned as an option. The  
questions is also whether we can keep the interpreter external or if  
we need to embed it into OpenSCAD. For the file monitoring solution,  
we probably need to embed. For the others, we could define some kind  
of text-based API and resolve the logic externally.

We could take a look at QtScript. It's included in Qt since Qt-4.3 and  
could be helpful in solving 1) and 3). It doesn't appear to target  
remote control of apps though.


~/= Marius

We are Elektropeople for a better living.

More information about the Openscad mailing list