Declarative Visual Programming with Invariant, Pre- and Post-conditions for Lattice Approximation of 3D Models
摘要
In the context of Visual Programing for Product Design, the endowment of the Designer with programing tools to boost productivity is central. However, Product (and Architectural) Design are usually taught without programing courses. This manuscript reports the results of Lattice DesignVisual Programming by a Product Designer with no previous exposure to programing but provided with the intuitive concepts of Pre-, Post-condition and Invariant logical first-order predicates for imperative programing. The scenario of application is the population of 3D domains (i.e. solid models) with lattice individuals of the type zero-curvature Truss (colloquially called 1.5D and 2.5D) structural elements. Result show that, although Pre-, Post-condition and Invariant are devised for imperative programing, they provide a solid and successful structure for visual programming (e.g. Grasshopper) for Designers with no mathematical or programming background. Regarding the specific Additive Manufacturing scope, the manuscript depicts the population of the target domain with lattice individuals which, in this case, undergo a rigid transformation before docked in the target domain. The lattice design presented allows for the grading of the lattice geometry. Future work addresses the programing of non-rigid transformations (non-affine, non-conformal, etc.) which dock the lattice individual into the target solid domain. Regarding the endowment of non-programmer Product Designer with visual programing and pre-, post- and invariant conditions, the performance results are very positive. However, as with any work team, experts must be recruited to help with highly specialized topics (e.g. computational mechanics, differential geometry, discrete mathematics, etc.).