# purescript-geometria

A library to build geometric abstractions from

- points, vectors, lines, half-lines, segments in any dimension
- circles and ellipses in 2-dimension
- using intersections to define new 2-dimension points .

No graphical backend is provided.

## Example

Edit 18AUG2019: version 2.0.0 refactoring breaks compatibility. Effect is no more, the lib is entirely pure (see README).

Edit 11SEP2020: geometry-plane version 1.0.1 : Since there is no rendering instructions anymore, choice is yours to use it with canvas, SVG, …

Edit 28JUL2024: geometria version 2.1.0 : The implementation of the ellipses’ intersections algorithm (via 3D-projection) was the occasion to remove the planar constraints for the basic types (`Point,`

`Vector`

…) that are polymorphic from now on. `point zero :: Point 2`

is the planar origin, `point zero :: Point 3`

is the spatial origin, and so on. I want to thank the PureScript community to make it possible to create such precise, concise and elegant definitions !