# The hgeometry package

HGeometry provides some basic geometry types, and geometric algorithms and data structures for them. The main two focusses are: (1) Strong type safety, and (2) implementations of geometric algorithms and data structures with good asymptotic running time guarantees.

[Skip to Readme]

## Properties

Versions | 0.1.0.0, 0.1.1.0, 0.1.1.1, 0.4.0.0, 0.5.0.0 |
---|---|

Dependencies | base (>=4.7 && <5), bifunctors (>=5), bytestring (>=0.10), containers (>=0.5.5), data-clist (>=0.0.7.2), directory, fixed-vector (>=0.6.4.0), Frames (>=0.1.0.0), hexpat (>=0.20.9), lens (>=4.2), linear (>=1.10), mtl, optparse-applicative, parsec (>=3), random, semigroupoids (>=5), semigroups (>=0.15), singletons (>=1.0 && <2.0), template-haskell, text (>=1.1.1.0), time, vector (>=0.10), vinyl (==0.5.*) [details] |

License | BSD3 |

Author | Frank Staals |

Maintainer | frank@fstaals.net |

Stability | Unknown |

Category | Geometry |

Home page | https://fstaals.net/software/hgeometry |

Source repository | head: git clone https://github.com/noinia/hgeometry |

Uploaded | Sat Jun 11 10:07:51 UTC 2016 by FrankStaals |

Distributions | NixOS:0.5.0.0 |

Downloads | 749 total (15 in the last 30 days) |

Votes | |

Status | Docs pending Build status unknown [no reports yet] |

## Modules

*Algorithms**Geometry**ConvexHull*- Algorithms.Geometry.ConvexHull.DivideAndConqueror
- Algorithms.Geometry.ConvexHull.GrahamScan
- Algorithms.Geometry.ConvexHull.Types

*DelaunayTriangulation*- Algorithms.Geometry.DelaunayTriangulation.DivideAndConqueror
- Algorithms.Geometry.DelaunayTriangulation.Naive
- Algorithms.Geometry.DelaunayTriangulation.Types

*EuclideanMST*- Algorithms.Geometry.EuclideanMST.EuclideanMST

*PolyLineSimplification*- Algorithms.Geometry.PolyLineSimplification.DouglasPeucker

*SmallestEnclosingBall*- Algorithms.Geometry.SmallestEnclosingBall.Naive
- Algorithms.Geometry.SmallestEnclosingBall.RandomizedIncrementalConstruction
- Algorithms.Geometry.SmallestEnclosingBall.Types

*Graph*- Algorithms.Graph.DFS
- Algorithms.Graph.MST

- Algorithms.Util

*Control**Monad**State*- Control.Monad.State.Persistent

*Data*- Data.BinaryTree
*CircularList*- Data.CircularList.Util

- Data.CircularSeq
- Data.Ext
- Data.Geometry
- Data.Geometry.Ball
- Data.Geometry.Boundary
- Data.Geometry.Box
- Data.Geometry.Box.Internal

- Data.Geometry.Duality
- Data.Geometry.HalfLine
- Data.Geometry.Interval
- Data.Geometry.Ipe
- Data.Geometry.Ipe.Attributes
- Data.Geometry.Ipe.FromIpe
- Data.Geometry.Ipe.IpeOut
- Data.Geometry.Ipe.Literal
- Data.Geometry.Ipe.PathParser
- Data.Geometry.Ipe.Reader
- Data.Geometry.Ipe.Types
- Data.Geometry.Ipe.Writer

- Data.Geometry.Line
- Data.Geometry.Line.Internal

- Data.Geometry.LineSegment
- Data.Geometry.Point
- Data.Geometry.PolyLine
- Data.Geometry.Polygon
- Data.Geometry.Polygon.Convex

- Data.Geometry.Properties
- Data.Geometry.Slab
- Data.Geometry.SubLine
- Data.Geometry.Transformation
- Data.Geometry.Triangle
- Data.Geometry.Vector
- Data.Geometry.Vector.VectorFixed

- Data.Permutation
- Data.PlanarGraph
- Data.PlaneGraph
- Data.Range
- Data.Seq2
*Sequence*- Data.Sequence.Util

- Data.UnBounded

*System**Random*- System.Random.Shuffle

## Flags

Name | Description | Default | Type |
---|---|---|---|

examples | Build demonstration programs | Disabled | Manual |

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

## Downloads

- hgeometry-0.5.0.0.tar.gz [browse] (Cabal source package)
- Package description (included in the package)