GEOS  3.3.3
EnhancedPrecisionOp.h
1 /**********************************************************************
2  * $Id: EnhancedPrecisionOp.h 2556 2009-06-06 22:22:28Z strk $
3  *
4  * GEOS - Geometry Engine Open Source
5  * http://geos.refractions.net
6  *
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: precision/EnhancedPrecisionOp.java rev. 1.9 (JTS-1.7)
17  *
18  **********************************************************************/
19 
20 #ifndef GEOS_PRECISION_ENHANCEDPRECISIONOP_H
21 #define GEOS_PRECISION_ENHANCEDPRECISIONOP_H
22 
23 #include <geos/export.h>
24 #include <geos/platform.h> // for int64
25 
26 // Forward declarations
27 namespace geos {
28  namespace geom {
29  class Geometry;
30  }
31 }
32 
33 namespace geos {
34 namespace precision { // geos.precision
35 
41 class GEOS_DLL EnhancedPrecisionOp {
42 
43 public:
44 
54  static geom::Geometry* intersection(
55  const geom::Geometry *geom0,
56  const geom::Geometry *geom1);
57 
66  static geom::Geometry* Union(
67  const geom::Geometry *geom0,
68  const geom::Geometry *geom1);
69 
78  static geom::Geometry* difference(
79  const geom::Geometry *geom0,
80  const geom::Geometry *geom1);
81 
90  static geom::Geometry* symDifference(
91  const geom::Geometry *geom0,
92  const geom::Geometry *geom1);
93 
103  static geom::Geometry* buffer(
104  const geom::Geometry *geom,
105  double distance);
106 };
107 
108 
109 } // namespace geos.precision
110 } // namespace geos
111 
112 #endif // GEOS_PRECISION_ENHANCEDPRECISIONOP_H
113 
114 /**********************************************************************
115  * $Log$
116  * Revision 1.2 2006/04/06 14:36:52 strk
117  * Cleanup in geos::precision namespace (leaks plugged, auto_ptr use, ...)
118  *
119  * Revision 1.1 2006/03/23 09:17:19 strk
120  * precision.h header split, minor optimizations
121  *
122  **********************************************************************/