GEOS
3.4.2
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
geos
algorithm
CentroidLine.h
1
/**********************************************************************
2
*
3
* GEOS - Geometry Engine Open Source
4
* http://geos.osgeo.org
5
*
6
* Copyright (C) 2005-2006 Refractions Research Inc.
7
* Copyright (C) 2001-2002 Vivid Solutions Inc.
8
*
9
* This is free software; you can redistribute and/or modify it under
10
* the terms of the GNU Lesser General Public Licence as published
11
* by the Free Software Foundation.
12
* See the COPYING file for more information.
13
*
14
**********************************************************************/
15
16
#ifndef GEOS_ALGORITHM_CENTROIDLINE_H
17
#define GEOS_ALGORITHM_CENTROIDLINE_H
18
19
20
#include <geos/export.h>
21
#include <geos/geom/Coordinate.h>
22
23
// Forward declarations
24
namespace
geos {
25
namespace
geom {
26
class
Geometry;
27
class
CoordinateSequence;
28
}
29
}
30
31
namespace
geos {
32
namespace
algorithm {
// geos::algorithm
33
35
class
GEOS_DLL
CentroidLine
{
36
private
:
37
38
geom::Coordinate
centSum;
39
40
double
totalLength;
41
42
public
:
43
44
CentroidLine
()
45
:
46
centSum(0.0, 0.0),
47
totalLength(0.0)
48
{}
49
50
~
CentroidLine
() {}
51
58
void
add(
const
geom::Geometry
*geom);
59
65
void
add(
const
geom::CoordinateSequence
*pts);
66
67
geom::Coordinate
* getCentroid()
const
;
68
70
bool
getCentroid(
geom::Coordinate
& ret)
const
;
71
};
72
73
}
// namespace geos::algorithm
74
}
// namespace geos
75
76
77
#endif // GEOS_ALGORITHM_CENTROIDLINE_H
Generated on Mon Aug 10 2015 02:11:04 for GEOS by
1.8.2