Maps SDK for C++ 1.0.0
Loading...
Searching...
No Matches
gem::Projection_UTM Class Reference

Projection_UTM object. More...

Inheritance diagram for gem::Projection_UTM:
Collaboration diagram for gem::Projection_UTM:

Public Member Functions

 Projection_UTM ()
 Default constructor.
 Projection_UTM (const Projection_UTM &)=default
 Default copy constructor.
 Projection_UTM (Projection_UTM &&obj) noexcept
 Default move constructor.
Projection_UTMoperator= (const Projection_UTM &)=default
 Default copy assignment.
Projection_UTMoperator= (Projection_UTM &&obj) noexcept
 Default move assignment.
 Projection_UTM (double x, double y, unsigned short zone, EHemisphere hemisphere)
 Constructs a Projection_UTM object from easting, northing and zone.
Projection_UTMset (double x, double y, unsigned short zone, EHemisphere hemisphere) noexcept
 Constructs a Projection_UTM object from easting, northing and zone.
double getX () const noexcept
 Retrieves the horizontal axis of the point.
double getY () const noexcept
 Retrieves the vertical axis of the point.
unsigned short getZone () const noexcept
 Retrieves the vertical axis of the point.
EHemisphere getHemisphere () const noexcept
 Retrieves the corresponding hemisphere of the point.
EProjectionType type () const
 Retrieves the specific type of the projection.
bool equals (Projection const &other) const noexcept
 Compares two Projection objects for equality.
bool operator== (const Projection &projection) const noexcept
 Compares two Projection objects for equality.
bool operator!= (const Projection &projection) const noexcept
 Inequality comparison operator for projections.
template<typename TSubclass>
TSubclass cast () const noexcept
 Attempts to cast the current projection object to a specified subclass.
bool isDefault () const override
 Determines if the current projection object is in its default state (unaltered since creation).
 operator bool () const noexcept
 Boolean conversion operator indicating if the projection is valid and not in its default state.
bool isEmpty () const noexcept
 Checks if the projection is empty.
void reset () noexcept
 Reset the projection object to its default state.

Static Public Member Functions

static constexpr EProjectionType type () noexcept
 Get the type of the projection.

Detailed Description

Projection_UTM object.

Implements share-read / copy-on-write ApiType object over IUTMProjection.

Constructor & Destructor Documentation

◆ Projection_UTM() [1/3]

gem::Projection_UTM::Projection_UTM ( const Projection_UTM & )
default

Default copy constructor.

Creates a copy of an existing Projection_UTM object.

◆ Projection_UTM() [2/3]

gem::Projection_UTM::Projection_UTM ( Projection_UTM && obj)
inlinenoexcept

Default move constructor.

Moves an existing Projection_UTM object into a new instance.

Parameters
objThe object to move into this new instance.

◆ Projection_UTM() [3/3]

gem::Projection_UTM::Projection_UTM ( double x,
double y,
unsigned short zone,
EHemisphere hemisphere )
inline

Constructs a Projection_UTM object from easting, northing and zone.

Parameters
xHorizontal axis of the point.
yVertical axis of the point.
zoneof the projection.
hemisphereGlobe hemisphere for the point location. Ensures that the x, y and zone form a valid point.

Member Function Documentation

◆ cast()

template<typename TSubclass>
TSubclass gem::Projection::cast ( ) const
inlinenoexceptinherited

Attempts to cast the current projection object to a specified subclass.

This is a template method.

Template Parameters
TSubclassThe subclass type to cast to.
Returns
An object of type TSubclass if the cast is successful; otherwise, a default-constructed object of TSubclass.

◆ equals()

bool gem::Projection::equals ( Projection const & other) const
inlinenoexceptinherited

Compares two Projection objects for equality.

Parameters
otherAnother Projection object to compare against.
Returns
True if both Projection objects represent the same data, false otherwise.

◆ getHemisphere()

EHemisphere gem::Projection_UTM::getHemisphere ( ) const
inlinenoexcept

Retrieves the corresponding hemisphere of the point.

Returns
The hemisphere of the corresponding point, north or south.

◆ getX()

double gem::Projection_UTM::getX ( ) const
inlinenoexcept

Retrieves the horizontal axis of the point.

Returns
horizontal axis of the point.

◆ getY()

double gem::Projection_UTM::getY ( ) const
inlinenoexcept

Retrieves the vertical axis of the point.

Returns
vertical axis of the point.

◆ getZone()

unsigned short gem::Projection_UTM::getZone ( ) const
inlinenoexcept

Retrieves the vertical axis of the point.

Returns
Universal Transverse Mercator (UTM) zone number

◆ isDefault()

bool gem::Projection::isDefault ( ) const
inlineoverrideinherited

Determines if the current projection object is in its default state (unaltered since creation).

Returns
true if the object is default, false otherwise.

◆ isEmpty()

bool gem::Projection::isEmpty ( ) const
inlinenoexceptinherited

Checks if the projection is empty.

Returns
true if the projection is empty, false otherwise.

◆ operator bool()

gem::Projection::operator bool ( ) const
inlineexplicitnoexceptinherited

Boolean conversion operator indicating if the projection is valid and not in its default state.

Returns
true if the object is valid and not default, false otherwise.

◆ operator!=()

bool gem::Projection::operator!= ( const Projection & projection) const
inlinenoexceptinherited

Inequality comparison operator for projections.

Parameters
projectionAnother Projection object to compare against.
Returns
true if the projections are not equal, false otherwise.

◆ operator=() [1/2]

Projection_UTM & gem::Projection_UTM::operator= ( const Projection_UTM & )
default

Default copy assignment.

Replaces the contents of this object with a copy of another Projection_UTM object.

Returns
A reference to this updated instance.

◆ operator=() [2/2]

Projection_UTM & gem::Projection_UTM::operator= ( Projection_UTM && obj)
inlinenoexcept

Default move assignment.

Moves another Projection_UTM object into this instance.

Parameters
objThe object to move into this instance.
Returns
A reference to this updated instance.

◆ operator==()

bool gem::Projection::operator== ( const Projection & projection) const
inlinenoexceptinherited

Compares two Projection objects for equality.

Parameters
projectionAnother Projection object to compare against.
Returns
True if both Projection objects represent the same data, false otherwise.

◆ set()

Projection_UTM & gem::Projection_UTM::set ( double x,
double y,
unsigned short zone,
EHemisphere hemisphere )
inlinenoexcept

Constructs a Projection_UTM object from easting, northing and zone.

the horizontal axis, vertical axis, zone and hemisphere of the point.

Parameters
xHorizontal axis of the point.
yVertical axis of the point.
zoneRelated to Universal Transverse Mercator corresponding zone.
hemisphereGlobe hemisphere which the point is located.
Returns
Reference to the current Projection_UTM object.

◆ type() [1/2]

EProjectionType gem::Projection::type ( ) const
inlineinherited

Retrieves the specific type of the projection.

Returns
The type of the projection as an EProjectionType enumeration.

◆ type() [2/2]

constexpr EProjectionType gem::Projection_UTM::type ( )
inlinestaticconstexprnoexcept

Get the type of the projection.

Returns
The type of the projection as a projection type.