GEOS
3.4.2
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
geos
operation
overlay
ElevationMatrixCell.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
* Last port: original (by strk)
16
*
17
**********************************************************************/
18
19
#ifndef GEOS_OP_OVERLAY_ELEVATIONMATRIXCELL_H
20
#define GEOS_OP_OVERLAY_ELEVATIONMATRIXCELL_H
21
22
#include <geos/export.h>
23
24
#include <set>
25
26
#ifdef _MSC_VER
27
#pragma warning(push)
28
#pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
29
#endif
30
31
// Forward declarations
32
namespace
geos {
33
namespace
geom {
34
class
Coordinate;
35
}
36
}
37
38
namespace
geos {
39
namespace
operation {
// geos::operation
40
namespace
overlay {
// geos::operation::overlay
41
42
43
class
GEOS_DLL ElevationMatrixCell {
44
public
:
45
ElevationMatrixCell();
46
~ElevationMatrixCell();
47
void
add(
const
geom::Coordinate &c);
48
void
add(
double
z);
49
double
getAvg(
void
)
const
;
50
double
getTotal(
void
)
const
;
51
std::string print()
const
;
52
private
:
53
std::set<double>zvals;
54
double
ztot;
55
};
56
57
}
// namespace geos::operation::overlay
58
}
// namespace geos::operation
59
}
// namespace geos
60
61
#ifdef _MSC_VER
62
#pragma warning(pop)
63
#endif
64
65
#endif // ndef GEOS_OP_OVERLAY_ELEVATIONMATRIXCELL_H
Generated by
1.8.5