geojson-4.0.4: A thin GeoJSON Layer above the aeson library
Copyright(C) 2014-2019 HS-GeoJSON Project
LicenseBSD-style (see the file LICENSE.md)
MaintainerAndrew Newman
Safe HaskellNone
LanguageHaskell2010

Data.Geospatial.Internal.Geometry

Description

See section 2.1 "Geometry Objects" in the GeoJSON Spec.

Synopsis

Types

newtype GeoPoint Source #

Instances

Instances details
Eq GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

Show GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

Generic GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

Associated Types

type Rep GeoPoint :: Type -> Type #

Methods

from :: GeoPoint -> Rep GeoPoint x #

to :: Rep GeoPoint x -> GeoPoint #

ToJSON GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

FromJSON GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

NFData GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

Methods

rnf :: GeoPoint -> () #

type Rep GeoPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPoint

type Rep GeoPoint = D1 ('MetaData "GeoPoint" "Data.Geospatial.Internal.Geometry.GeoPoint" "geojson-4.0.4-EFT8DmZYSQPKnKmPqW3WsY" 'True) (C1 ('MetaCons "GeoPoint" 'PrefixI 'True) (S1 ('MetaSel ('Just "_unGeoPoint") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GeoPositionWithoutCRS)))

newtype GeoMultiPoint Source #

Instances

Instances details
Eq GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

Show GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

Generic GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

Associated Types

type Rep GeoMultiPoint :: Type -> Type #

ToJSON GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

FromJSON GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

NFData GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

Methods

rnf :: GeoMultiPoint -> () #

type Rep GeoMultiPoint Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPoint

type Rep GeoMultiPoint = D1 ('MetaData "GeoMultiPoint" "Data.Geospatial.Internal.Geometry.GeoMultiPoint" "geojson-4.0.4-EFT8DmZYSQPKnKmPqW3WsY" 'True) (C1 ('MetaCons "GeoMultiPoint" 'PrefixI 'True) (S1 ('MetaSel ('Just "_unGeoMultiPoint") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq GeoPositionWithoutCRS))))

splitGeoMultiPoint :: GeoMultiPoint -> Seq GeoPoint Source #

Split GeoMultiPoint coordinates into multiple GeoPoints

mergeGeoPoints :: Seq GeoPoint -> GeoMultiPoint Source #

Merge multiple GeoPoints into one GeoMultiPoint

newtype GeoPolygon Source #

Instances

Instances details
Eq GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

Show GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

Generic GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

Associated Types

type Rep GeoPolygon :: Type -> Type #

ToJSON GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

FromJSON GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

NFData GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

Methods

rnf :: GeoPolygon -> () #

type Rep GeoPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoPolygon

type Rep GeoPolygon = D1 ('MetaData "GeoPolygon" "Data.Geospatial.Internal.Geometry.GeoPolygon" "geojson-4.0.4-EFT8DmZYSQPKnKmPqW3WsY" 'True) (C1 ('MetaCons "GeoPolygon" 'PrefixI 'True) (S1 ('MetaSel ('Just "_unGeoPolygon") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (LinearRing GeoPositionWithoutCRS)))))

newtype GeoMultiPolygon Source #

Instances

Instances details
Eq GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

Show GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

Generic GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

Associated Types

type Rep GeoMultiPolygon :: Type -> Type #

ToJSON GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

FromJSON GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

NFData GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

Methods

rnf :: GeoMultiPolygon -> () #

type Rep GeoMultiPolygon Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiPolygon

type Rep GeoMultiPolygon = D1 ('MetaData "GeoMultiPolygon" "Data.Geospatial.Internal.Geometry.GeoMultiPolygon" "geojson-4.0.4-EFT8DmZYSQPKnKmPqW3WsY" 'True) (C1 ('MetaCons "GeoMultiPolygon" 'PrefixI 'True) (S1 ('MetaSel ('Just "_unGeoMultiPolygon") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (Seq (LinearRing GeoPositionWithoutCRS))))))

splitGeoMultiPolygon :: GeoMultiPolygon -> Seq GeoPolygon Source #

Split GeoMultiPolygon coordinates into multiple GeoPolygons

mergeGeoPolygons :: Seq GeoPolygon -> GeoMultiPolygon Source #

Merge multiple GeoPolygons into one GeoMultiPolygon

newtype GeoLine Source #

Instances

Instances details
Eq GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

Methods

(==) :: GeoLine -> GeoLine -> Bool #

(/=) :: GeoLine -> GeoLine -> Bool #

Show GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

Generic GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

Associated Types

type Rep GeoLine :: Type -> Type #

Methods

from :: GeoLine -> Rep GeoLine x #

to :: Rep GeoLine x -> GeoLine #

ToJSON GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

FromJSON GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

NFData GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

Methods

rnf :: GeoLine -> () #

type Rep GeoLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoLine

type Rep GeoLine = D1 ('MetaData "GeoLine" "Data.Geospatial.Internal.Geometry.GeoLine" "geojson-4.0.4-EFT8DmZYSQPKnKmPqW3WsY" 'True) (C1 ('MetaCons "GeoLine" 'PrefixI 'True) (S1 ('MetaSel ('Just "_unGeoLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LineString GeoPositionWithoutCRS))))

newtype GeoMultiLine Source #

Instances

Instances details
Eq GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

Show GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

Generic GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

Associated Types

type Rep GeoMultiLine :: Type -> Type #

ToJSON GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

FromJSON GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

NFData GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

Methods

rnf :: GeoMultiLine -> () #

type Rep GeoMultiLine Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry.GeoMultiLine

type Rep GeoMultiLine = D1 ('MetaData "GeoMultiLine" "Data.Geospatial.Internal.Geometry.GeoMultiLine" "geojson-4.0.4-EFT8DmZYSQPKnKmPqW3WsY" 'True) (C1 ('MetaCons "GeoMultiLine" 'PrefixI 'True) (S1 ('MetaSel ('Just "_unGeoMultiLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq (LineString GeoPositionWithoutCRS)))))

splitGeoMultiLine :: GeoMultiLine -> Seq GeoLine Source #

Split GeoMultiLine coordinates into multiple GeoLines

mergeGeoLines :: Seq GeoLine -> GeoMultiLine Source #

Merge multiple GeoLines into one GeoMultiLine

data GeospatialGeometry Source #

See section 2.1 Geometry Objects in the GeoJSON Spec.

Instances

Instances details
Eq GeospatialGeometry Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry

Show GeospatialGeometry Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry

Generic GeospatialGeometry Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry

Associated Types

type Rep GeospatialGeometry :: Type -> Type #

ToJSON GeospatialGeometry Source #

encodes Geometry Objects to GeoJSON

Instance details

Defined in Data.Geospatial.Internal.Geometry

FromJSON GeospatialGeometry Source #

decodes Geometry Objects from GeoJSON

Aeson doesnt decode "null" into Null unfortunately

Instance details

Defined in Data.Geospatial.Internal.Geometry

NFData GeospatialGeometry Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry

Methods

rnf :: GeospatialGeometry -> () #

type Rep GeospatialGeometry Source # 
Instance details

Defined in Data.Geospatial.Internal.Geometry

Lenses

Prisms