Python Powered Computational Geometry

Summary

Computational Geometry is the study of geometry with the support of appropriate algorithms, and influences a broad range of fields of science, engineering and mathematics including: Computation Fluid Dynamics (CFD), Finite Element Model

Description

Computational Geometry is the study of geometry with the support of appropriate algorithms, and influences a broad range of fields of science, engineering and mathematics including: Computation Fluid Dynamics (CFD), Finite Element Modelling (FEM), Computer Aided Design / Modelling (CAD/CAM), Robotics, Computer Graphics and Collision Detection.

While it is possible to quickly implement naive versions of computational geometry algorithms in any language, such algorithms can be expensive and time consuming to write, debug and maintain. The advent of a number of tools, including new bindings for the Computational Geometry Algorithms Library (CGAL) and the ipython notebook make Python an ideal tool for experimentation with fast and numerically robust algorithms.

The presentation will include demonstrations of a number of common two- and three-dimensional computational geometry algorithms:

  • Triangulations (and Voronoi diagrams)
  • Mesh refinement
  • Intersection testing
  • Alpha shapes
  • Convex hulls
  • Constructive Solid Geometry
  • Minkowski Sums