LuciadCPillar 2024.0.08
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
luciad::Point Class Referencefinal

Represents a point. More...

#include <luciad/geometries/Point.h>

Inheritance diagram for luciad::Point:
luciad::Geometry

Public Member Functions

 Point (const Point &other)
 
 Point (Point &&other) noexcept
 
 Point (std::shared_ptr< CoordinateReference > reference, Coordinate coordinate)
 Constructs a point with a reference and a coordinate. More...
 
 ~Point () override
 
Bounds getBounds () const override
 Returns the bounds for the geometry object. More...
 
Coordinate getLocation () const
 Returns the coordinate of the location. More...
 
std::shared_ptr< luciad::CoordinateReferencegetReference () const override
 Returns the coordinate reference of the geometry. More...
 
std::shared_ptr< PointmoveTo (Coordinate location) const
 Returns a new Point instance which is moved to the new coordinate location. More...
 
Pointoperator= (Point other) noexcept
 
std::shared_ptr< Pointtranslate (Coordinate translation) const
 Returns a new Point instance with the translation vector applied. More...
 
- Public Member Functions inherited from luciad::Geometry
virtual ~Geometry ()=default
 
virtual Bounds getBounds () const =0
 Returns the bounds for the geometry object. More...
 
virtual std::shared_ptr< CoordinateReferencegetReference () const =0
 Returns the coordinate reference of the geometry. More...
 

Protected Member Functions

size_t getHash () const override
 Returns the hash value for this geometry. More...
 
virtual size_t getHash () const =0
 Returns the hash value for this geometry. More...
 

Detailed Description

Represents a point.

See also
GeometryFactory::createPoint
Point::Point

Constructor & Destructor Documentation

◆ Point() [1/3]

luciad::Point::Point ( std::shared_ptr< CoordinateReference reference,
Coordinate  coordinate 
)

Constructs a point with a reference and a coordinate.

Parameters
referencethe reference of the point.
coordinatethe coordinate values of the point.

◆ ~Point()

luciad::Point::~Point ( )
override

◆ Point() [2/3]

luciad::Point::Point ( const Point other)

◆ Point() [3/3]

luciad::Point::Point ( Point &&  other)
noexcept

Member Function Documentation

◆ getBounds()

Bounds luciad::Point::getBounds ( ) const
overridevirtual

Returns the bounds for the geometry object.

Returns
the bounds for the geometry object.
Exceptions
luciad::InvalidArgumentExceptionif the bounds could not be computed. For example, when the geometry is defined by invalid points.

Implements luciad::Geometry.

◆ getHash()

size_t luciad::Point::getHash ( ) const
overrideprotectedvirtual

Returns the hash value for this geometry.

Returns
the hash value for this geometry.

Implements luciad::Geometry.

◆ getLocation()

Coordinate luciad::Point::getLocation ( ) const

Returns the coordinate of the location.

Returns
the coordinate of the location.

◆ getReference()

std::shared_ptr< luciad::CoordinateReference > luciad::Point::getReference ( ) const
overridevirtual

Returns the coordinate reference of the geometry.

Returns
the coordinate reference of the geometry.

Implements luciad::Geometry.

◆ moveTo()

std::shared_ptr< Point > luciad::Point::moveTo ( Coordinate  location) const

Returns a new Point instance which is moved to the new coordinate location.

Parameters
locationthe new location to move this point to
Returns
a new, moved geometry
Since
2020.1

◆ operator=()

Point & luciad::Point::operator= ( Point  other)
noexcept

◆ translate()

std::shared_ptr< Point > luciad::Point::translate ( Coordinate  translation) const

Returns a new Point instance with the translation vector applied.

Parameters
translationthe translation vector
Returns
a new, translated geometry
Since
2020.1