{-# 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(..) , origin, vector , pointFromList , projectPoint , pattern Point1 , pattern Point2 , pattern Point3 , xCoord, yCoord, zCoord , PointFunctor(..) , CCW, ccw, ccw' , pattern CCW, pattern CW, pattern CoLinear , ccwCmpAround, cwCmpAround, ccwCmpAroundWith, cwCmpAroundWith , sortAround, insertIntoCyclicOrder , Quadrant(..), quadrantWith, quadrant, partitionIntoQuadrants , cmpByDistanceTo , squaredEuclideanDist, euclideanDist , AsAPoint(..), coord, unsafeCoord, vector' ) 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