GEOS
3.4.2
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
geos
geom
LinearRing.h
1
/**********************************************************************
2
*
3
* GEOS - Geometry Engine Open Source
4
* http://geos.osgeo.org
5
*
6
* Copyright (C) 2001-2002 Vivid Solutions Inc.
7
* Copyright (C) 2005 2006 Refractions Research 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: geom/LinearRing.java r320 (JTS-1.12)
17
*
18
**********************************************************************/
19
20
#ifndef GEOS_GEOS_LINEARRING_H
21
#define GEOS_GEOS_LINEARRING_H
22
23
#include <geos/export.h>
24
#include <string>
25
#include <vector>
26
#include <geos/platform.h>
27
#include <geos/geom/LineString.h>
28
29
#include <geos/inline.h>
30
31
// Forward declarations
32
namespace
geos {
33
namespace
geom {
// geos::geom
34
class
Coordinate;
35
class
CoordinateArraySequence;
36
}
37
}
38
39
namespace
geos {
40
namespace
geom {
// geos::geom
41
57
class
GEOS_DLL
LinearRing
:
public
LineString
{
58
59
public
:
60
65
static
const
unsigned
int
MINIMUM_VALID_SIZE = 4;
66
67
LinearRing
(
const
LinearRing
&lr);
68
81
LinearRing
(
CoordinateSequence
* points,
82
const
GeometryFactory
*newFactory);
83
85
LinearRing
(CoordinateSequence::AutoPtr points,
86
const
GeometryFactory
*newFactory);
87
88
virtual
Geometry
*
clone
()
const
{
return
new
LinearRing
(*
this
); }
89
90
virtual
~
LinearRing
();
91
98
int
getBoundaryDimension()
const
;
99
108
bool
isSimple()
const
;
109
110
bool
isClosed()
const
;
111
112
std::string getGeometryType()
const
;
113
114
virtual
GeometryTypeId
getGeometryTypeId()
const
;
115
116
void
setPoints(
CoordinateSequence
* cl);
117
118
Geometry
* reverse()
const
;
119
120
private
:
121
122
void
validateConstruction();
123
};
124
125
126
}
// namespace geos::geom
127
}
// namespace geos
128
129
#endif // ndef GEOS_GEOS_LINEARRING_H
Generated on Sun Aug 9 2015 16:19:16 for GEOS by
1.8.2