GEOS  3.9.1dev
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
geos::geomgraph::index::MonotoneChainEdge Class Reference

MonotoneChains are a way of partitioning the segments of an edge to allow for fast searching of intersections. More...

#include <MonotoneChainEdge.h>

Collaboration diagram for geos::geomgraph::index::MonotoneChainEdge:
[legend]

Public Member Functions

 ~MonotoneChainEdge ()=default
 
 MonotoneChainEdge (Edge *newE)
 
const geom::CoordinateSequencegetCoordinates ()
 
std::vector< size_t > & getStartIndexes ()
 
double getMinX (size_t chainIndex)
 
double getMaxX (size_t chainIndex)
 
void computeIntersects (const MonotoneChainEdge &mce, SegmentIntersector &si)
 
void computeIntersectsForChain (size_t chainIndex0, const MonotoneChainEdge &mce, size_t chainIndex1, SegmentIntersector &si)
 

Protected Attributes

Edgee
 
const geom::CoordinateSequencepts
 
std::vector< size_t > startIndex
 

Private Member Functions

void computeIntersectsForChain (size_t start0, size_t end0, const MonotoneChainEdge &mce, size_t start1, size_t end1, SegmentIntersector &ei)
 
bool overlaps (size_t start0, size_t end0, const MonotoneChainEdge &mce, size_t start1, size_t end1)
 

Detailed Description

MonotoneChains are a way of partitioning the segments of an edge to allow for fast searching of intersections.

Definition at line 46 of file MonotoneChainEdge.h.

Constructor & Destructor Documentation

geos::geomgraph::index::MonotoneChainEdge::~MonotoneChainEdge ( )
default
geos::geomgraph::index::MonotoneChainEdge::MonotoneChainEdge ( Edge newE)

Member Function Documentation

void geos::geomgraph::index::MonotoneChainEdge::computeIntersects ( const MonotoneChainEdge mce,
SegmentIntersector si 
)
void geos::geomgraph::index::MonotoneChainEdge::computeIntersectsForChain ( size_t  chainIndex0,
const MonotoneChainEdge mce,
size_t  chainIndex1,
SegmentIntersector si 
)

Referenced by geos::geomgraph::index::MonotoneChain::computeIntersections().

Here is the caller graph for this function:

void geos::geomgraph::index::MonotoneChainEdge::computeIntersectsForChain ( size_t  start0,
size_t  end0,
const MonotoneChainEdge mce,
size_t  start1,
size_t  end1,
SegmentIntersector ei 
)
private
const geom::CoordinateSequence* geos::geomgraph::index::MonotoneChainEdge::getCoordinates ( )
double geos::geomgraph::index::MonotoneChainEdge::getMaxX ( size_t  chainIndex)
double geos::geomgraph::index::MonotoneChainEdge::getMinX ( size_t  chainIndex)
std::vector<size_t>& geos::geomgraph::index::MonotoneChainEdge::getStartIndexes ( )
bool geos::geomgraph::index::MonotoneChainEdge::overlaps ( size_t  start0,
size_t  end0,
const MonotoneChainEdge mce,
size_t  start1,
size_t  end1 
)
private

Member Data Documentation

Edge* geos::geomgraph::index::MonotoneChainEdge::e
protected

Definition at line 64 of file MonotoneChainEdge.h.

const geom::CoordinateSequence* geos::geomgraph::index::MonotoneChainEdge::pts
protected

Definition at line 65 of file MonotoneChainEdge.h.

std::vector<size_t> geos::geomgraph::index::MonotoneChainEdge::startIndex
protected

Definition at line 68 of file MonotoneChainEdge.h.


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