EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches

EBGeometry is a header-only C++17 library for

  1. Turning watertight and orientable surface grids into signed distance functions (SDFs).
  2. Fast evaluation of such grids using bounding volume hierarchies (BVHs).
  3. Providing fast constructive solid geometry (CSG) unions using BVHs.

This page is the entry point for the Doxygen API reference, generated directly from the Source/ headers. For a narrative, example-driven introduction (installation, build-system integration, the underlying geometric concepts), see the user documentation instead.

Where to start reading

Namespace map

Namespace Contents
EBGeometry Vectors (Vec2T, Vec3T), implicit functions, signed distance functions, analytic shapes, CSG operators, transformations, the SDF/BVH wrapper classes (MeshSDF, TriMeshSDF, FlatMeshSDF)
EBGeometry::DCEL The half-edge surface mesh: VertexT, EdgeT, FaceT, MeshT, and mesh iterators
EBGeometry::BVH TreeBVH, PackedBVH, partitioners, traversal callback types (LeafEvaluator, PrunePredicate, ChildOrderer, NodeKeyFactory)
EBGeometry::BoundingVolumes AABBT (axis-aligned box) and SphereT (bounding sphere)
EBGeometry::Octree Pointer-based octree used internally for bounding-volume estimation of arbitrary implicit functions
EBGeometry::Random Centralized random sampling utilities
EBGeometry::SFC Space-filling curves (Morton, Nested, Hilbert), point-to-grid binning (computeBins), and curve ordering of points (order), used for bottom-up BVH construction and spatial sorting
EBGeometry::Soup Polygon-soup compression and soup-to-DCEL conversion
EBGeometry::TriangleSoA Structure-of-arrays triangle groups used as SIMD-friendly PackedBVH leaves
EBGeometry::PointSoA True structure-of-arrays point-position groups (PointSoAT), for nearest-neighbor-style PackedBVH leaves over point clouds
EBGeometry::Parser File readers (STL, PLY, OBJ, VTK) that build DCEL meshes, mesh SDFs, or triangle BVHs

Elsewhere