GEOS 3.4.2

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

PolygonizeEdge.h
1 /**********************************************************************
2 *
3 * GEOS - Geometry Engine Open Source
4 * http://geos.osgeo.org
5 *
6 * Copyright (C) 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 * Last port: operation/polygonize/PolygonizeEdge.java rev. 1.3 (JTS-1.10)
17 *
18 **********************************************************************/
19
20
21 #ifndef GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H
22 #define GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H
23
24 #include <geos/export.h>
25
26 #include <geos/planargraph/Edge.h> // for inheritance
27
28 // Forward declarations
29 namespace geos {
30 namespace geom {
31 class LineString;
32 }
33 }
34
35 namespace geos {
36 namespace operation { // geos::operation
37 namespace polygonize { // geos::operation::polygonize
38
39 /* \brief
40 * An edge of a polygonization graph.
41 *
42 * @version 1.4
43 */
44 class GEOS_DLL PolygonizeEdge: public planargraph::Edge {
45 private:
46 // Externally owned
47 const geom::LineString *line;
48 public:
49
50 // Keep the given pointer (won't do anything to it)
51 PolygonizeEdge(const geom::LineString *newLine);
52
53 // Just return what it was given initially
54 const geom::LineString* getLine();
55 };
56
57 } // namespace geos::operation::polygonize
58 } // namespace geos::operation
59 } // namespace geos
60
61 #endif // GEOS_OP_POLYGONIZE_POLYGONIZEEDGE_H