LuciadCPillar 2024.0.08
|
Geometry is the root class of the hierarchy. More...
#include <luciad/geometries/Geometry.h>
Public Member Functions | |
virtual | ~Geometry ()=default |
virtual Bounds | getBounds () const =0 |
Returns the bounds for the geometry object. More... | |
virtual std::shared_ptr< CoordinateReference > | getReference () const =0 |
Returns the coordinate reference of the geometry. More... | |
Protected Member Functions | |
virtual size_t | getHash () const =0 |
Returns the hash value for this geometry. More... | |
Geometry is the root class of the hierarchy.
Geometry is an abstract (non-instantiable) class.
The interpretation of the coordinates is subject to the coordinate reference systems associated to the geometry. All coordinates within a geometry object must be in the same coordinate reference systems. Each coordinate shall be unambiguously associated to a coordinate reference system either directly or through its containing geometry.
You can read more about the available geometries here.
|
virtualdefault |
|
pure virtual |
Returns the bounds for the geometry object.
luciad::InvalidArgumentException | if the bounds could not be computed. For example, when the geometry is defined by invalid points. |
Implemented in luciad::Bounds, luciad::Point, luciad::ArcBand, luciad::BezierCurve, luciad::CircleBy3Points, luciad::CircleByCenterPoint, luciad::CircularArcBy3Points, luciad::CircularArcByBulge, luciad::CircularArcByCenterPoint, luciad::CompositeCurve, luciad::CompositePatch, luciad::CompositeRing, luciad::Ellipse, luciad::EllipticalArc, luciad::ExtrudedGeometry, luciad::Line, luciad::MultiGeometry, luciad::Patch, luciad::Polyline, and luciad::PolylineRing.
|
protectedpure virtual |
Returns the hash value for this geometry.
Implemented in luciad::Bounds, luciad::Point, luciad::ArcBand, luciad::BezierCurve, luciad::CircleBy3Points, luciad::CircleByCenterPoint, luciad::CircularArcBy3Points, luciad::CircularArcByBulge, luciad::CircularArcByCenterPoint, luciad::CompositeCurve, luciad::CompositePatch, luciad::CompositeRing, luciad::Ellipse, luciad::EllipticalArc, luciad::ExtrudedGeometry, luciad::Line, luciad::MultiGeometry, luciad::Patch, luciad::Polygon, luciad::Polyline, and luciad::PolylineRing.
|
pure virtual |
Returns the coordinate reference of the geometry.
Implemented in luciad::Bounds, luciad::Point, luciad::ArcBand, luciad::BezierCurve, luciad::CircleBy3Points, luciad::CircleByCenterPoint, luciad::CircularArcBy3Points, luciad::CircularArcByBulge, luciad::CircularArcByCenterPoint, luciad::CompositeCurve, luciad::CompositePatch, luciad::CompositeRing, luciad::Ellipse, luciad::EllipticalArc, luciad::ExtrudedGeometry, luciad::Line, luciad::MultiGeometry, luciad::Patch, luciad::Polyline, and luciad::PolylineRing.