GEOS  3.14.0dev
Public Member Functions | Friends | List of all members
geos::geomgraph::TopologyLocation Class Reference

A TopologyLocation is the labelling of a GraphComponent's topological relationship to a single Geometry. More...

#include <TopologyLocation.h>

Public Member Functions

 TopologyLocation (Location on, Location left, Location right)
 Constructs a TopologyLocation specifying how points on, to the left of, and to the right of some GraphComponent relate to some Geometry. More...
 
 TopologyLocation (Location on)
 
 TopologyLocation (const TopologyLocation &gl)
 
TopologyLocationoperator= (const TopologyLocation &gl)
 
Location get (std::size_t posIndex) const
 
bool isNull () const
 
bool isAnyNull () const
 
bool isEqualOnSide (const TopologyLocation &le, uint32_t locIndex) const
 
bool isArea () const
 
bool isLine () const
 
void flip ()
 
void setAllLocations (Location locValue)
 
void setAllLocationsIfNull (Location locValue)
 
void setLocation (std::size_t locIndex, Location locValue)
 
void setLocation (Location locValue)
 
const std::array< Location, 3 > & getLocations () const
 
void setLocations (Location on, Location left, Location right)
 
bool allPositionsEqual (Location loc) const
 
void merge (const TopologyLocation &gl)
 merge updates only the UNDEF attributes of this object with the attributes of another.
 
std::string toString () const
 

Friends

std::ostream & operator<< (std::ostream &, const TopologyLocation &)
 

Detailed Description

A TopologyLocation is the labelling of a GraphComponent's topological relationship to a single Geometry.

If the parent component is an area edge, each side and the edge itself have a topological location. These locations are named

If the parent component is a line edge or node, there is a single topological relationship attribute, ON.

The possible values of a topological location are {Location::NONE, Location::EXTERIOR, Location::BOUNDARY, Location::INTERIOR}

The labelling is stored in an array location[j] where where j has the values ON, LEFT, RIGHT

Constructor & Destructor Documentation

◆ TopologyLocation()

geos::geomgraph::TopologyLocation::TopologyLocation ( Location  on,
Location  left,
Location  right 
)
inline

Constructs a TopologyLocation specifying how points on, to the left of, and to the right of some GraphComponent relate to some Geometry.

Possible values for the parameters are Location::NONE, Location::EXTERIOR, Location::BOUNDARY, and Location::INTERIOR.

See also
Location

Member Function Documentation

◆ isAnyNull()

bool geos::geomgraph::TopologyLocation::isAnyNull ( ) const
inline
Returns
true if any locations is Location::NONE

◆ isNull()

bool geos::geomgraph::TopologyLocation::isNull ( void  ) const
inline
Returns
true if all locations are Location::NONE

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