The purpose of the project was to develop proof-of-concept software that would enable architects to engage with minimal effort an emerging design field called _performative design_ (PD).
_Technologies: C++, Objective-C, OpenGL_
PD is unique in that it espouses the algorithmic resolution of design intent (i.e. formal and creative desires) with optimized, quantitative engineering criteria. So far, this field takes advantage of (1) collaborative efforts between experts of different fields and (2) multiple, disparate software packages.
_OpenManifold_ provides a user-friendly interface to help resolve the competing interests of three fundamental areas in PD: (1) design intent, (2) quantitative engineering criteria (structure, environment, etc.), and (3) algorithmic optimization.
Above is a post-analysis screenshot of the app with an evolved shape under structural load. Its incremental, automated evolution was controlled by a random search algorithm, and the analysis was performed by an open source FEM engine.
The interface is targeted towards code-savvy designers. While user-friendliness is often attributed to clever GUI tooling, here, it is much easier in some respects to express complex operations, especially processes, in code.
To that end, _OpenManifold_ provides a Python interpreted to control objects in the virtual 3D space, much like the painterly canvas of the [Processing](http://processing.org) IDE. This avoids complications with designing increasingly complex UI interactions for working with 3D objects with a necessarily 2D screen. However, simple manipulation handles (translate, rotate, scale) are still provided for direct manipulation.