geos::coverage::InvalidSegmentDetector Class Reference

`#include <InvalidSegmentDetector.h>`

Inheritance diagram for geos::coverage::InvalidSegmentDetector:

## Public Member Functions

| InvalidSegmentDetector ()
| InvalidSegmentDetector (double p_distanceTol)
bool | isDone () const override
| Reports whether the client of this class needs to continue testing all intersections in an arrangement.
void | processIntersections (SegmentString *ssAdj, std::size_t iAdj, SegmentString *ssTarget, std::size_t iTarget) override

## Detailed Description

Detects invalid coverage topology where ring segments interact. The inputs to processIntersections(SegmentString, int, SegmentString, int)} must be CoverageRing s. If an invalid situation is detected the input target segment is marked invalid using CoverageRing#markInvalid(int).

This class assumes it is used with SegmentSetMutualIntersector, so that segments in the same ring are not evaluated.

Author
  Martin Davis

## Constructor & Destructor Documentation

## InvalidSegmentDetector()

geos::coverage::InvalidSegmentDetector::InvalidSegmentDetector | ( |  | ) |

inline

Creates an invalid segment detector.

## Member Function Documentation

## isDone()

bool geos::coverage::InvalidSegmentDetector::isDone | ( |  | ) | const

inline override virtual

Reports whether the client of this class needs to continue testing all intersections in an arrangement.

Returns
  true if there is not need to continue testing segments

The default implementation always return false (process all intersections).

Reimplemented from geos::noding::SegmentIntersector.

## processIntersections()

void geos::coverage::InvalidSegmentDetector::processIntersections | ( | SegmentString * | ssAdj,
|  | std::size_t | iAdj,
|  | SegmentString * | ssTarget,
|  | std::size_t | iTarget )

override virtual

Process interacting segments. The input order is important. The adjacent segment is first, the target is second. The inputs must be CoverageRing.

Implements geos::noding::SegmentIntersector.

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

- InvalidSegmentDetector.h