Skip to content

shervinazadi/topoGenesis

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

topoGenesis

Build Status codecov GitHub Documentation Status DOI

DOI

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:

  1. offer basic mathematical functionalities on field data models
  2. offer functionalities of computational topology on top of the field structures
  3. facilitate the conversion between mesh-based data models and field data models.
  4. facilitate field simulations, whether governed by differential equations, spectral models or based on computational models (ABM)
  5. 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)
  • 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.