Safe Haskell | None |
---|---|

Language | Haskell2010 |

Utilities to compute area, perimeterPolygon, etc. on the surface of a sphere.

- shittyCentroid :: Polygon -> Point
- avg :: (RealFrac a, Foldable t) => t a -> a
- areaTriangle :: Point -> Point -> Point -> Double
- relativeCompactness :: Polygon -> Double
- compactness1 :: Polygon -> Double
- areaConvex :: Polygon -> Double
- areaPolygon :: Polygon -> Double
- totalPerimeter :: [Polygon] -> Double
- perimeterPolygon :: [(Double, Double)] -> Double
- areaPolyRectangular :: Polygon -> Double
- distance :: (Double, Double) -> (Double, Double) -> Double
- centralAngle :: (Double, Double) -> (Double, Double) -> Double

# Documentation

shittyCentroid :: Polygon -> Point Source #

averages the coördinates of a polygon, returning a point.

areaTriangle :: Point -> Point -> Point -> Double Source #

Compute the area of a triangle using L`Huillier`

s formula

relativeCompactness :: Polygon -> Double Source #

Relative compactness, i.e. compactness divided by the compactness of a Euclidean circle

compactness1 :: Polygon -> Double Source #

Take the area of the polygon and divide by the perimeter squared. This is a dimensionless measurement.

areaConvex :: Polygon -> Double Source #

Compute the area of a convex polygon on the surface of a sphere.

areaPolygon :: Polygon -> Double Source #

Uses areal projection; then finds area of the polygon. Result is in km^2

totalPerimeter :: [Polygon] -> Double Source #

Given a list of polygons, return the total area.

areaPolyRectangular :: Polygon -> Double Source #

Find the area of a polygon with rectangular coördinates given.