Skip to content

Built a python library visualizer of a Geodesic dome using Numba in order to create a spherical SOM (Self Organizing Map) to address issues encountered with the "border effect". This library creates a Geodesic Dome object which can be used to store information at it's vertices. We implement a series functions to help manipulate this data structure.

License

Notifications You must be signed in to change notification settings

mchoccie/GeodesicDome

Repository files navigation

Development of Python Library for the Geodesic Dome

This project aims to complete a python library implementing 3 key features related to the Geodesic Dome:

  • Create a Geodesic Dome with the ability to continuously tessellate each face according to a specified frequency
  • Tessellate a subset of faces
  • Implement a neighbour search algorithm to find all points within a specified distance, where each neighbour can be found in O(1) time

We aim to implement these three features correctly while also trying to make the code performant both in terms of time and memory.

Overview

I completed this project with 5 other team members as a part of a university capstone project. We had a chance to explore the Python library Numba used to optimize Python code. The library and docs can be found at this link: https://pypi.org/project/geodome/. The most challenging part of this assignment was understanding how to present arrays in ways that were compliant with Numba. During the development process we ran into many issues with array manipulation.

About

Built a python library visualizer of a Geodesic dome using Numba in order to create a spherical SOM (Self Organizing Map) to address issues encountered with the "border effect". This library creates a Geodesic Dome object which can be used to store information at it's vertices. We implement a series functions to help manipulate this data structure.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published