GEOS 3.14.0dev
SegmentSetMutualIntersector.h
1/**********************************************************************
2 *
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
5 *
6 * Copyright (C) 2006 Refractions Research Inc.
7 *
8 * This is free software; you can redistribute and/or modify it under
9 * the terms of the GNU Lesser General Public Licence as published
10 * by the Free Software Foundation.
11 * See the COPYING file for more information.
12 *
13 *
14 **********************************************************************/
15
16#pragma once
17
18#include <geos/noding/SegmentString.h>
19#include <geos/noding/SegmentIntersector.h>
20
21namespace geos {
22namespace noding { // geos::noding
23
37public:
38
40 : segInt(nullptr)
41 {}
42
43 virtual
45
53 void
55 {
56 segInt = si;
57 }
58
63 virtual void setBaseSegments(SegmentString::ConstVect* segStrings) = 0;
64
70 virtual void process(SegmentString::ConstVect* segStrings) = 0;
71
72protected:
73
74 SegmentIntersector* segInt;
75
76};
77
78} // geos::noding
79} // geos
80
Processes possible intersections detected by a Noder.
Definition noding/SegmentIntersector.h:45
An intersector for the red-blue intersection problem.
Definition SegmentSetMutualIntersector.h:36
virtual void process(SegmentString::ConstVect *segStrings)=0
void setSegmentIntersector(SegmentIntersector *si)
Definition SegmentSetMutualIntersector.h:54
virtual void setBaseSegments(SegmentString::ConstVect *segStrings)=0
Basic namespace for all GEOS functionalities.
Definition geos.h:39