GEOS 3.6.2
FastSegmentSetIntersectionFinder.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 * Last port: noding/FastSegmentSetIntersectionFinder.java r388 (JTS-1.12)
17 *
18 **********************************************************************/
19
20#ifndef GEOS_NODING_FASTSEGMENTSETINTERSECTIONFINDER_H
21#define GEOS_NODING_FASTSEGMENTSETINTERSECTIONFINDER_H
22
23#include <geos/noding/SegmentString.h>
24#include <geos/noding/MCIndexSegmentSetMutualIntersector.h>
25
26
27//forward declarations
28namespace geos {
29 namespace noding {
32 //class MCIndexSegmentSetMutualIntersector : public SegmentSetMutualIntersector;
33 }
34}
35
36
37namespace geos {
38namespace noding { // geos::noding
39
49class FastSegmentSetIntersectionFinder
50{
51private:
53 geos::algorithm::LineIntersector * lineIntersector;
54
55protected:
56public:
57 FastSegmentSetIntersectionFinder( SegmentString::ConstVect * baseSegStrings);
58
59 ~FastSegmentSetIntersectionFinder();
60
68 {
69 return segSetMutInt;
70 }
71
72 bool intersects( SegmentString::ConstVect * segStrings);
73 bool intersects( SegmentString::ConstVect * segStrings, SegmentIntersectionDetector * intDetector);
74
75};
76
77} // geos::noding
78} // geos
79
80#endif // GEOS_NODING_FASTSEGMENTSETINTERSECTIONFINDER_H
81
A LineIntersector is an algorithm that can both test whether two line segments intersect and compute ...
Definition LineIntersector.h:49
SegmentSetMutualIntersector * getSegmentSetIntersector()
Definition FastSegmentSetIntersectionFinder.h:67
Intersects two sets of SegmentStrings using a index based on MonotoneChains and a SpatialIndex.
Definition MCIndexSegmentSetMutualIntersector.h:55
Detects and records an intersection between two SegmentStrings, if one exists.
Definition SegmentIntersectionDetector.h:44
An intersector for the red-blue intersection problem.
Definition SegmentSetMutualIntersector.h:38
Classes to compute nodings for arrangements of line segments and line segment sequences.
Definition PreparedLineString.h:27
Basic namespace for all GEOS functionalities.
Definition IndexedNestedRingTester.h:25