Computational Geometry in Python
computational-geometrypythonscipyalgorithms
Abstraction: Python scipy/sympy toolkit for computational geometry algorithms
Key points:
- Divides into Combinatorial (points, segments, polygons) and Numerical (curves, surfaces) computational geometry
- scipy.spatial wraps Qhull libraries for convex hulls, Voronoi diagrams, and Delaunay triangulations
- KDTree / cKDTree in scipy.spatial enables fast nearest-neighbor and range searching; cKDTree is C-backed and significantly faster
- Constrained conforming Delaunay triangulations (with angle/area constraints) require the
trianglelibrary by Richard Shewchuck, wrapping a CMU mesh generator - Bezier curves implemented via matplotlib.path using de Casteljau algorithm; higher-degree curves use piecewise Bezier splines
- Shortest paths on triangulations use scipy.sparse weighted adjacency matrices and scipy.sparse.csgraph
Connections: Scipy · Sympy · Computational Geometry · Delaunay Triangulation · Algorithms
Source: http://blancosilva.github.io/post/2014/10/28/Computational-Geometry-in-Python.html?