PROJ C++ API
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
osgeo::proj::metadata::Extent Class Reference

Information about spatial, vertical, and temporal extent. More...

#include <metadata.hpp>

Inheritance diagram for osgeo::proj::metadata::Extent:
Inheritance graph
[legend]
Collaboration diagram for osgeo::proj::metadata::Extent:
Collaboration graph
[legend]

Public Member Functions

const util::optional< std::string > & description () PROJ_CONST_DECL
 
const std::vector< GeographicExtentNNPtr > & geographicElements () PROJ_CONST_DECL
 
const std::vector< TemporalExtentNNPtr > & temporalElements () PROJ_CONST_DECL
 
const std::vector< VerticalExtentNNPtr > & verticalElements () PROJ_CONST_DECL
 
bool isEquivalentTo (const util::IComparable *other, util::IComparable::Criterion criterion=util::IComparable::Criterion::STRICT) const override
 Returns whether an object is equivalent to another one. More...
 
bool contains (const ExtentNNPtr &other) const
 Returns whether this extent contains the other one. More...
 
bool intersects (const ExtentNNPtr &other) const
 Returns whether this extent intersects the other one. More...
 
ExtentPtr intersection (const ExtentNNPtr &other) const
 Returns the intersection of this extent with another one. More...
 

Static Public Member Functions

static ExtentNNPtr create (const util::optional< std::string > &descriptionIn, const std::vector< GeographicExtentNNPtr > &geographicElementsIn, const std::vector< VerticalExtentNNPtr > &verticalElementsIn, const std::vector< TemporalExtentNNPtr > &temporalElementsIn)
 Instanciate a Extent. More...
 
static ExtentNNPtr createFromBBOX (double west, double south, double east, double north, const util::optional< std::string > &descriptionIn=util::optional< std::string >())
 Instanciate a Extent from a bounding box. More...
 

Static Public Attributes

static const ExtentNNPtr WORLD
 World extent.
 

Additional Inherited Members

- Public Types inherited from osgeo::proj::util::IComparable
enum  Criterion { Criterion::STRICT, Criterion::EQUIVALENT }
 Comparison criterion. More...
 

Detailed Description

Information about spatial, vertical, and temporal extent.

Remarks
Simplified version of Extent from GeoAPI

Member Function Documentation

bool osgeo::proj::metadata::Extent::contains ( const ExtentNNPtr other) const

Returns whether this extent contains the other one.

Behaviour only well specified if each sub-extent category as at most one element.

ExtentNNPtr osgeo::proj::metadata::Extent::create ( const util::optional< std::string > &  descriptionIn,
const std::vector< GeographicExtentNNPtr > &  geographicElementsIn,
const std::vector< VerticalExtentNNPtr > &  verticalElementsIn,
const std::vector< TemporalExtentNNPtr > &  temporalElementsIn 
)
static

Instanciate a Extent.

Parameters
descriptionInTextual description, or empty.
geographicElementsInGeographic element(s), or empty.
verticalElementsInVertical element(s), or empty.
temporalElementsInTemporal element(s), or empty.
Returns
a new Extent.
ExtentNNPtr osgeo::proj::metadata::Extent::createFromBBOX ( double  west,
double  south,
double  east,
double  north,
const util::optional< std::string > &  descriptionIn = util::optional<std::string>() 
)
static

Instanciate a Extent from a bounding box.

Parameters
westWestern-most coordinate of the limit of the dataset extent (in degrees).
southSouthern-most coordinate of the limit of the dataset extent (in degrees).
eastEastern-most coordinate of the limit of the dataset extent (in degrees).
northNorthern-most coordinate of the limit of the dataset extent (in degrees).
descriptionInTextual description, or empty.
Returns
a new Extent.
const optional< std::string > & osgeo::proj::metadata::Extent::description ( )

Return a textual description of the extent.

Returns
the description, or empty.
const std::vector< GeographicExtentNNPtr > & osgeo::proj::metadata::Extent::geographicElements ( )

Return the geographic element(s) of the extent

Returns
the geographic element(s), or empty.
ExtentPtr osgeo::proj::metadata::Extent::intersection ( const ExtentNNPtr other) const

Returns the intersection of this extent with another one.

Behaviour only well specified if there is one single GeographicExtent in each object. Returns nullptr otherwise.

bool osgeo::proj::metadata::Extent::intersects ( const ExtentNNPtr other) const

Returns whether this extent intersects the other one.

Behaviour only well specified if each sub-extent category as at most one element.

bool osgeo::proj::metadata::Extent::isEquivalentTo ( const util::IComparable other,
util::IComparable::Criterion  criterion = util::IComparable::Criterion::STRICT 
) const
overridevirtual

Returns whether an object is equivalent to another one.

Parameters
otherother object to compare to
criterioncomparaison criterion.
Returns
true if objects are equivalent.

Implements osgeo::proj::util::IComparable.

const std::vector< TemporalExtentNNPtr > & osgeo::proj::metadata::Extent::temporalElements ( )

Return the temporal element(s) of the extent

Returns
the temporal element(s), or empty.
const std::vector< VerticalExtentNNPtr > & osgeo::proj::metadata::Extent::verticalElements ( )

Return the vertical element(s) of the extent

Returns
the vertical element(s), or empty.

The documentation for this class was generated from the following files: