LuciadCPillar 2024.0.08
|
Represents a polygon. More...
#include <luciad/geometries/Polygon.h>
Public Member Functions | |
std::shared_ptr< Polygon > | appendInteriorRing (std::shared_ptr< PolylineRing > interiorRing) const |
Creates a new Polygon instance based on this instance, but with a new interior ring appended to the list of interior rings. More... | |
std::shared_ptr< Polygon > | removeInteriorRing (size_t index) const |
Creates a new Polygon instance based on this instance, but with the interior ring at location 'index' removed. More... | |
std::shared_ptr< Polygon > | replaceExteriorRing (std::shared_ptr< PolylineRing > exteriorRing) const |
Creates a new Polygon instance using the interior rings from this instance, but with a new exterior ring. More... | |
std::shared_ptr< Polygon > | replaceInteriorRing (size_t index, std::shared_ptr< PolylineRing > interiorRing) const |
Creates a new Polygon instance with the exterior and interior rings from this instance, but with a new interior ring at location 'index'. More... | |
Public Member Functions inherited from luciad::CompositePatch | |
~CompositePatch () override | |
Bounds | getBounds () const override |
Returns the bounds for the geometry object. More... | |
const std::shared_ptr< Patch > & | getExteriorPatch () const |
Returns the exterior patch of this composite patch. More... | |
const std::vector< std::shared_ptr< Patch > > & | getInteriorPatches () const |
Returns the interior patches of this composite patch. More... | |
std::shared_ptr< luciad::CoordinateReference > | getReference () const override |
Returns the coordinate reference of the geometry. 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< CoordinateReference > | getReference () 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... | |
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... | |
Represents a polygon.
std::shared_ptr< Polygon > luciad::Polygon::appendInteriorRing | ( | std::shared_ptr< PolylineRing > | interiorRing | ) | const |
Creates a new Polygon instance based on this instance, but with a new interior ring appended to the list of interior rings.
interiorRing | the new interior ring. |
luciad::NullArgumentException | when passing nullptr . |
|
overrideprotectedvirtual |
Returns the hash value for this geometry.
Reimplemented from luciad::CompositePatch.
std::shared_ptr< Polygon > luciad::Polygon::removeInteriorRing | ( | size_t | index | ) | const |
Creates a new Polygon instance based on this instance, but with the interior ring at location 'index' removed.
index | the index of the interior ring to remove |
luciad::InvalidArgumentException | for an invalid index |
std::shared_ptr< Polygon > luciad::Polygon::replaceExteriorRing | ( | std::shared_ptr< PolylineRing > | exteriorRing | ) | const |
Creates a new Polygon instance using the interior rings from this instance, but with a new exterior ring.
exteriorRing | the new exterior ring. |
luciad::NullArgumentException | when passing nullptr . |
std::shared_ptr< Polygon > luciad::Polygon::replaceInteriorRing | ( | size_t | index, |
std::shared_ptr< PolylineRing > | interiorRing | ||
) | const |
Creates a new Polygon instance with the exterior and interior rings from this instance, but with a new interior ring at location 'index'.
index | the index of the interior ring to replace |
interiorRing | the new interior ring. |
luciad::NullArgumentException | when passing nullptr . |
luciad::InvalidArgumentException | for an invalid index |