GEOS
3.9.1dev
|
A list of edge intersections along an Edge. More...
#include <EdgeIntersectionList.h>
Public Types | |
using | container = std::vector< EdgeIntersection > |
using | const_iterator = container::const_iterator |
Public Member Functions | |
EdgeIntersectionList (const Edge *edge) | |
~EdgeIntersectionList ()=default | |
void | add (const geom::Coordinate &coord, size_t segmentIndex, double dist) |
const_iterator | begin () const |
const_iterator | end () const |
bool | isEmpty () const |
bool | isIntersection (const geom::Coordinate &pt) const |
void | addEndpoints () |
void | addSplitEdges (std::vector< Edge * > *edgeList) |
Edge * | createSplitEdge (const EdgeIntersection *ei0, const EdgeIntersection *ei1) |
std::string | print () const |
Public Attributes | |
const Edge * | edge |
Private Attributes | |
container | nodeMap |
bool | sorted |
A list of edge intersections along an Edge.
Implements splitting an edge with intersections into multiple resultant edges.
Definition at line 60 of file EdgeIntersectionList.h.
using geos::geomgraph::EdgeIntersectionList::const_iterator = container::const_iterator |
Definition at line 66 of file EdgeIntersectionList.h.
using geos::geomgraph::EdgeIntersectionList::container = std::vector<EdgeIntersection> |
Definition at line 65 of file EdgeIntersectionList.h.
geos::geomgraph::EdgeIntersectionList::EdgeIntersectionList | ( | const Edge * | edge | ) |
|
default |
void geos::geomgraph::EdgeIntersectionList::add | ( | const geom::Coordinate & | coord, |
size_t | segmentIndex, | ||
double | dist | ||
) |
void geos::geomgraph::EdgeIntersectionList::addEndpoints | ( | ) |
void geos::geomgraph::EdgeIntersectionList::addSplitEdges | ( | std::vector< Edge * > * | edgeList | ) |
Creates new edges for all the edges that the intersections in this list split the parent edge into. Adds the edges to the input list (this is so a single list can be used to accumulate all split edges for a Geometry).
edgeList | a list of EdgeIntersections |
|
inline |
Definition at line 86 of file EdgeIntersectionList.h.
Edge* geos::geomgraph::EdgeIntersectionList::createSplitEdge | ( | const EdgeIntersection * | ei0, |
const EdgeIntersection * | ei1 | ||
) |
|
inline |
Definition at line 97 of file EdgeIntersectionList.h.
References geos::geom::operator<<().
bool geos::geomgraph::EdgeIntersectionList::isEmpty | ( | ) | const |
bool geos::geomgraph::EdgeIntersectionList::isIntersection | ( | const geom::Coordinate & | pt | ) | const |
std::string geos::geomgraph::EdgeIntersectionList::print | ( | ) | const |
const Edge* geos::geomgraph::EdgeIntersectionList::edge |
Definition at line 74 of file EdgeIntersectionList.h.
|
mutableprivate |
Definition at line 69 of file EdgeIntersectionList.h.
|
mutableprivate |
Definition at line 70 of file EdgeIntersectionList.h.