Constructive Lattice Geometry
MetadataShow full item record
Lattice structures are widespread in product and architectural design. Recent work has demonstrated the printing of nano-scale lattices. However, an anticipated increase in product complexity will require the storage, processing, and design of lattices with orders of magnitude more elements than current Computer-Aided Design (CAD) software can manage. To address this, we propose a class of highly regular lattices called Steady Lattices, which due to their regularity, provide opportunities for highly compressed storage, accelerated processing, and intuitive design. Special cases of steady lattices are also presented, which provide varying degrees of compromise between design freedom and geometric regularity. For example, the commonly used regular lattices, which provide little design freedom but offer maximum regularity, are the least general form of steady lattice. We propose the 2-directional, Bent Corner-Operated Trans-Similar (BeCOTS) lattices as a useful compromise between regular lattices and fully general steady lattices. A BeCOTS lattice may be controlled by four non-coplanar points, which represent four corners of the lattice. The Trans-Similar property ensures that a BeCOTS lattice is composed of groups of beams such that each consecutive pair of groups of beams along a particular direction is related by the same similarity. Trans-Similarity also enables constant-time queries such as surface area calculation, volume calculation, and point-membership classification. We take advantage of the regularity in steady lattices to efficiently produce and query highly complex lattice structures that we call Constructive Lattice Geometry (CLG), where CLG is an extension of traditional Constructive Solid Geometry (CSG). CLG models are periodic CSG models for which regular patterns of primitives are combined into many repeating CSG microstructures that are ultimately combined into one CSG macrostructure. We provide strategies for designing and processing recursively defined CLG models to enable the creation of CLG models composed of smaller CLG models. Parameterized steady lattices and CLG models may be defined by a few lines of code, which facilitates lazy (on-demand) evaluation, massively parallel processing, interactive editing, and algorithmic optimization.