What is a GeoRegion?
In essence, a GeoRegion is:
a geographical region of interest
identified by an
IDa subregion of a parent
GeoRegion(identified bypID, which must also be a validID)
Default GeoRegions
When using GeoRegions.jl, the default GeoRegion should generally be the global domain, specified by GLB and given by the [N,S,E,W] coordinates [90,-90,360,0]. The Global GeoRegion GLB is considered to be a subset of itself.
GeoRegions.AbstractGeoRegion Type
AbstractGeoRegionAbstract supertype for geographical regions. All AbstractGeoRegion types contain the following fields:
ID- AStringType, the identifier for the GeoRegion.pID- AStringType, the identifier for the parent GeoRegion.name- AStringType, the full name of the GeoRegion.path- AStringType, the path of the file containing information on this GeoRegion.N- AFloatType, contains the northernmost latitude bound.S- AFloatType, contains the southernmost latitude bound.E- AFloatType, contains the easternmost longitude bound.W- AFloatType, contains the westernmost longitude bound.θ- AFloatType, the rotation projection for the data in the GeoRegiongeometry- AGeometryorVector{Geometry}Type
The GeoRegion Type
In GeoRegions.jl v8 and above, we have standardized the usage of the struct type GeoRegion for all simple polygonal shapes.
Current Limitations:
A
GeoRegionsupports only one shape/polygon per GeoRegionA
GeoRegionshape/polygon cannot have holes within it
Work is currently in progress to determine how best to include multiple shapes in a single GeoRegion type.
Types of GeoRegions for versions ≤v7
Previous versions of GeoRegions.jl used to differentiate between Rectilinear (RectRegion) and Polygonal (PolyRegion) Types of GeoRegions. This is no longer supported in ≥v8.
GeoRegions.GeoRegion Type
GeoRegionA struct containing geometric information on a geographic regions defined in Geometry. We note the following:
geometry- currently is a singularGeometry
The Geometry Type
All GeoRegions are defined based on a Geometry struct type that contains information on the geometry of a GeoRegion.
GeoRegions.Geometry Type
GeometryStruct containing the geometry/shape properties of a GeoRegion. All Geometry types contain the following fields:
shape- A vector ofPoint2(see GeometryBasics.jl) Types, defining a non-rectilinear shape of the GeoRegion.centroid- APoint2Type, defining the centroid of the GeoRegion.polygon- APolygonType (see GeometryBasics.jl), which is useful when doing checks on polygons using GeometryOps.jl.
GeoRegions.jl extracts the Polygon and Vector{Point} information from this Geometry type and use the functionalities of GeometryOps.jl to perform checks on polygons.