# geogram

Geogram is a programming library with geometric algorithms.

It contains the main results in Geometry Processing from the former

ALICE Inria project, that is, more than 30 research articles published

in ACM SIGGRAPH, ACM Transactions on Graphics, Symposium on Geometry

Processing and Eurographics. It was supported by two grants from the

European Research Council (ERC): GOODSHAPE and VORPALINE.

Geogram includes a simple yet efficient Mesh data structure (for surfacic

and volumetric meshes), exact computer arithmetics (a-la Shewchuck,

implemented in GEO::expansion ), a predicate code generator (PCK: the

Predicate Construction Kit), standard geometric predicates

(orient/insphere), Delaunay triangulation, Voronoi diagram, spatial

search data structures, spatial sorting) and less standard ones (more

general geometric predicates, intersection between a Voronoi diagram

and a triangular or tetrahedral mesh embedded in n dimensions), and

semi-discrete optimal transport.

## Compiling

## Design principles

- Make it as
*simple as possible**(but not simpler)* - Make it as
*easy to use as possible* - Make it as
*easy to compile as possible* - Maximize
*speed* - Minimize
*memory consumption* *Minimize*number of*lines of code**Minimize*number of*C++ classes*

*Simplicity is the ultimate sophistication [Leonardo da Vinci]*

More on this in this keynote Eurographics presentation.