te::gm::SafeOverlay Class Reference

A class containing helper methods to make overlay algorithms more robust and safer to execute when dealing with invalid geometries. \description When some exception is thrown during the execution of the basic overlay algorithms, this class will handle it, try to make the geoemtries valid, and try again. More...

#include <SafeOverlay.h>

Public Member Functions

 SafeOverlay ()=delete
 < Constructor More...
 
 ~SafeOverlay ()=delete
 Tries to clip the geometry. If an exception is thrown, it tries to make the geometry valid and retry again. More...
 

Static Public Member Functions

static te::gm::GeometryClipGeometry (const te::gm::Geometry *geometry, const te::gm::Envelope &envelope)
 Tries to make the difference. If an exception is thrown, it tries to make the geometry valid and retry again. More...
 
static te::gm::GeometryPtr Difference (const te::gm::Geometry *g1, const te::gm::Geometry *g2)
 Tries to make the intersection. If an exception is thrown, it tries to make the geometry valid and retry again. More...
 
static te::gm::GeometryPtr Intersection (const te::gm::Geometry *g1, const te::gm::Geometry *g2)
 Tries to make the geometry pair valid. If it is unable to do that, it will throw an exception. More...
 
static std::unique_ptr< te::gm::GeometryPairMakeValid (const te::gm::Geometry *g1, const te::gm::Geometry *g2)
 

Detailed Description

A class containing helper methods to make overlay algorithms more robust and safer to execute when dealing with invalid geometries. \description When some exception is thrown during the execution of the basic overlay algorithms, this class will handle it, try to make the geoemtries valid, and try again.

Definition at line 53 of file SafeOverlay.h.

Constructor & Destructor Documentation

◆ SafeOverlay()

te::gm::SafeOverlay::SafeOverlay ( )
delete

< Constructor

Destructor

◆ ~SafeOverlay()

te::gm::SafeOverlay::~SafeOverlay ( )
delete

Tries to clip the geometry. If an exception is thrown, it tries to make the geometry valid and retry again.

Member Function Documentation

◆ ClipGeometry()

static te::gm::Geometry* te::gm::SafeOverlay::ClipGeometry ( const te::gm::Geometry geometry,
const te::gm::Envelope envelope 
)
static

Tries to make the difference. If an exception is thrown, it tries to make the geometry valid and retry again.

◆ Difference()

static te::gm::GeometryPtr te::gm::SafeOverlay::Difference ( const te::gm::Geometry g1,
const te::gm::Geometry g2 
)
static

Tries to make the intersection. If an exception is thrown, it tries to make the geometry valid and retry again.

◆ Intersection()

static te::gm::GeometryPtr te::gm::SafeOverlay::Intersection ( const te::gm::Geometry g1,
const te::gm::Geometry g2 
)
static

Tries to make the geometry pair valid. If it is unable to do that, it will throw an exception.

◆ MakeValid()

static std::unique_ptr<te::gm::GeometryPair> te::gm::SafeOverlay::MakeValid ( const te::gm::Geometry g1,
const te::gm::Geometry g2 
)
static

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