GEOS
3.3.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
geos
operation
GeometryGraphOperation.h
1
/**********************************************************************
2
* $Id: GeometryGraphOperation.h 2958 2010-03-29 11:29:40Z mloskot $
3
*
4
* GEOS - Geometry Engine Open Source
5
* http://geos.refractions.net
6
*
7
* Copyright (C) 2005-2006 Refractions Research Inc.
8
* Copyright (C) 2001-2002 Vivid Solutions Inc.
9
*
10
* This is free software; you can redistribute and/or modify it under
11
* the terms of the GNU Lesser General Public Licence as published
12
* by the Free Software Foundation.
13
* See the COPYING file for more information.
14
*
15
**********************************************************************
16
*
17
* Last port: operation/GeometryGraphOperation.java rev. 1.18 (JTS-1.10)
18
*
19
**********************************************************************/
20
21
#ifndef GEOS_OPERATION_GEOMETRYGRAPHOPERATION_H
22
#define GEOS_OPERATION_GEOMETRYGRAPHOPERATION_H
23
24
#include <geos/export.h>
25
#include <geos/algorithm/LineIntersector.h>
// for composition
26
27
#include <vector>
28
29
#ifdef _MSC_VER
30
#pragma warning(push)
31
#pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
32
#endif
33
34
// Forward declarations
35
namespace
geos {
36
namespace
algorithm {
37
class
BoundaryNodeRule;
38
}
39
namespace
geom {
40
class
Geometry;
41
class
PrecisionModel;
42
}
43
namespace
geomgraph {
44
class
GeometryGraph;
45
}
46
}
47
48
49
namespace
geos {
50
namespace
operation {
// geos.operation
51
53
class
GEOS_DLL
GeometryGraphOperation
{
54
55
public
:
56
57
GeometryGraphOperation
(
const
geom::Geometry
*g0,
58
const
geom::Geometry
*g1);
59
60
GeometryGraphOperation
(
const
geom::Geometry
*g0,
61
const
geom::Geometry
*g1,
62
const
algorithm::BoundaryNodeRule
& boundaryNodeRule);
63
64
GeometryGraphOperation
(
const
geom::Geometry
*g0);
65
66
virtual
~
GeometryGraphOperation
();
67
68
const
geom::Geometry
* getArgGeometry(
unsigned
int
i)
const
;
69
70
protected
:
71
72
algorithm::LineIntersector
li;
73
74
const
geom::PrecisionModel
* resultPrecisionModel;
75
79
std::vector<geomgraph::GeometryGraph*>
arg
;
80
81
void
setComputationPrecision(
const
geom::PrecisionModel
* pm);
82
};
83
84
}
// namespace geos.operation
85
}
// namespace geos
86
87
#ifdef _MSC_VER
88
#pragma warning(pop)
89
#endif
90
91
#endif
92
93
/**********************************************************************
94
* $Log$
95
* Revision 1.2 2006/04/03 15:54:33 strk
96
* - getArgGeometry() parameter type changed from 'int' to 'unsigned int'
97
* - Added port informations
98
* - minor assertions checking
99
* - minor cleanups
100
*
101
* Revision 1.1 2006/03/09 16:46:49 strk
102
* geos::geom namespace definition, first pass at headers split
103
*
104
**********************************************************************/
105
Generated on Thu Mar 13 2014 09:55:43 for GEOS by
1.8.1.2