{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE UndecidableInstances #-} -------------------------------------------------------------------------------- -- | -- Module : Data.Geometry.Point -- Copyright : (C) Frank Staals -- License : see the LICENSE file -- Maintainer : Frank Staals -- -- \(d\)-dimensional points. -- -------------------------------------------------------------------------------- module Data.Geometry.Point( Point(.., Point1, Point2, Point3) , origin, vector , pointFromList , projectPoint , xCoord, yCoord, zCoord , PointFunctor(..) , CCW, ccw, ccw', isCoLinear , pattern CCW, pattern CW, pattern CoLinear , ccwCmpAround, ccwCmpAround' , cwCmpAround, cwCmpAround' , ccwCmpAroundWith, ccwCmpAroundWith' , cwCmpAroundWith, cwCmpAroundWith' , sortAround, sortAround' , insertIntoCyclicOrder , Quadrant(..), quadrantWith, quadrant, partitionIntoQuadrants , cmpByDistanceTo, cmpByDistanceTo' , squaredEuclideanDist, euclideanDist , coord, unsafeCoord ) where import Data.Geometry.Point.Class import Data.Geometry.Point.Internal hiding (coord, unsafeCoord) import Data.Geometry.Point.Orientation.Degenerate import Data.Geometry.Point.Quadrants