topoGenesis
topoGenesis is an open-source python package providing topological data structures and functions for working with voxel data in Generative Systems and Sciences. The envisaged application areas are:
- generative design in architecture and built environment
- generative spatial simulations
- 3D image processing
- topological data analysis
- machine learning
Vision
topoGenesis aims to utilize the vast functionalities of fields (mathematical objects) in generative systems and sciences. Therefore it seeks to:
- offer basic mathematical functionalities on field data models
- offer functionalities of computational topology on top of the field structures
- facilitate the conversion between mesh-based data models and field data models.
- facilitate field simulations, whether governed by differential equations, spectral models or based on computational models (ABM)
- construct a bridge between spatial data models and tensor data structures to facilitate the utilization of the latest artificial intelligence models
Structure
- Mesh to Field: Rasterization
- Point Cloud Voxelation
- Line Network Voxelation
- Mesh Surface Voxelation
- Signed Distance Field
- Field to Mesh: Isosurface
- Boolean Marching Cubes
- Marching Cubes
- Surface Nets
- Local Computation
- Stencil / Kernels
- von Neumann neighbourhood
- Moore neighbourhood
- Cube neighbourhood
- Custom neighbourhoods
- Universal Functions & Mathematical Operators (Numerical)
- Stencil / Kernels
- Field Simulations (Vectorized)
- Dynamic Systems (based on Differential Equations)
- Agent-Based Modeling
- Cellular Automata
Installation
for installation check this tutorial
Genesis Lab: Laboratory of Generative Systems and Sciences
This project is currently being developed by Shervin Azadi and Pirouz Nourian at Genesis Lab: Laboratory of Generative Systems and Sciences, Department of Architectural Engineering and Technology, at TU Delft.