GEOS
3.7.2
include
geos
operation
distance
IndexedFacetDistance.h
1
/**********************************************************************
2
*
3
* GEOS - Geometry Engine Open Source
4
* http://geos.osgeo.org
5
*
6
* Copyright (C) 2016 Daniel Baston
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
* Last port: operation/distance/IndexedFacetDistance.java (f6187ee2 JTS-1.14)
16
*
17
**********************************************************************/
18
19
#ifndef GEOS_INDEXEDFACETDISTANCE_H
20
#define GEOS_INDEXEDFACETDISTANCE_H
21
22
#include <geos/operation/distance/FacetSequenceTreeBuilder.h>
23
24
namespace
geos
{
25
namespace
operation {
26
namespace
distance {
27
class
GEOS_DLL IndexedFacetDistance {
28
public
:
29
IndexedFacetDistance(
const
geom::Geometry * g) :
30
cachedTree(FacetSequenceTreeBuilder::build(g))
31
{}
32
33
static
double
distance(
const
geom::Geometry * g1,
const
geom::Geometry * g2);
34
35
double
getDistance(
const
geom::Geometry * g)
const
;
36
37
~IndexedFacetDistance();
38
39
private
:
40
std::unique_ptr<geos::index::strtree::STRtree> cachedTree;
41
42
};
43
}
44
}
45
}
46
47
#endif //GEOS_INDEXEDFACETDISTANCE_H
geos
Basic namespace for all GEOS functionalities.
Definition:
IndexedNestedRingTester.h:25
Generated by
1.8.17