GEOS 3.4.2

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

- File List

Dimension.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 #ifndef GEOS_GEOM_DIMENSION_H
16 #define GEOS_GEOM_DIMENSION_H
17
18 #include <geos/export.h>
19 #include <geos/inline.h>
20
21 namespace geos {
22 namespace geom { // geos::geom
23
25 //
29 class GEOS_DLL Dimension {
30 public:
31 enum DimensionType {
33 DONTCARE=-3,
34
36 True=-2,
37
39 False=-1,
40
42 P=0,
43
45 L=1,
46
48 A=2
49 };
50
51 //static const int P = 0; /// Dimension value of a point (0).
52 //static const int L = 1; /// Dimension value of a curve (1).
53 //static const int A = 2; /// Dimension value of a surface (2).
54 //static const int False = -1; /// Dimension value of the empty geometry (-1).
55 //static const int True = -2; /// Dimension value of non-empty geometries (= {P, L, A}).
56 //static const int DONTCARE = -3; /// Dimension value for any dimension (= {FALSE, TRUE}).
57 static char toDimensionSymbol(int dimensionValue);
58
59 static int toDimensionValue(char dimensionSymbol);
60
61 };
62
63 } // namespace geos::geom
64 } // namespace geos
65
66 #ifdef GEOS_INLINE
67 # include "geos/geom/Envelope.inl"
68 #endif
69
70 #endif // ndef GEOS_GEOM_DIMENSION_H