Expand description
Domain-agnostic computational geometry library.
Provides fundamental geometric primitives (2D and 3D), transformations, polygon operations, collision detection, and spatial indexing for the U-Engine ecosystem.
§Modules
primitives: Core types —Point2,Vector2,Segment2,AABB2,Point3,Vector3,AABB3polygon: Polygon operations — area, centroid, convex hull, windingtransform: Rigid transformations —Transform2D,Transform3Drobust: Numerically robust geometric predicates (Shewchuk)collision: SAT-based collision detection (2D convex polygons), AABB overlap (2D and 3D)minkowski: Minkowski sum and NFP for convex polygonsspatial_index: Linear-scan spatial indices for 2D and 3D AABB queries
§Architecture
This crate sits at Layer 2 (Algorithms) in the U-Engine ecosystem. It contains no domain-specific concepts — nesting, packing, scheduling, etc. are all defined by consumers at higher layers.
§References
- de Berg, Cheong, van Kreveld, Overmars (2008), “Computational Geometry”
- Shewchuk (1997), “Adaptive Precision Floating-Point Arithmetic”
- O’Rourke (1998), “Computational Geometry in C”
- Ericson (2005), “Real-Time Collision Detection”
Modules§
- collision
- Collision detection for 2D polygons.
- minkowski
- Minkowski sum computation for convex polygons.
- nalgebra_
types - Re-exports of nalgebra types commonly used with this crate.
- offset
- Polygon offset via raw edge offset with miter/bevel joins.
- polygon
- Polygon operations: area, centroid, convex hull, winding.
- primitives
- Core geometric primitives.
- robust
- Numerically robust geometric predicates.
- spatial_
index - Spatial indexing for efficient geometric queries.
- transform
- Rigid transformations for 2D and 3D.