| TerraLib 4.1

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

- File List
- File Members

E:/Projetos_Primeiro_Semestre_2012/TerraView/terralib/src/terralib/kernel/TeSpatialOperations.h
Go to the documentation of this file.

    00001 /************************************************************************************
    00002 TerraLib - a library for developing GIS applications.
    00003 Copyright © 2001-2007 INPE and Tecgraf/PUC-Rio.
    00004
    00005 This code is part of the TerraLib library.
    00006 This library is free software; you can redistribute it and/or
    00007 modify it under the terms of the GNU Lesser General Public
    00008 License as published by the Free Software Foundation; either
    00009 version 2.1 of the License, or (at your option) any later version.
    00010
    00011 You should have received a copy of the GNU Lesser General Public
    00012 License along with this library.
    00013
    00014 The authors reassure the license terms regarding the warranties.
    00015 They specifically disclaim any warranties, including, but not limited to,
    00016 the implied warranties of merchantability and fitness for a particular purpose.
    00017 The library provided hereunder is on an "as is" basis, and the authors have no
    00018 obligation to provide maintenance, support, updates, enhancements, or modifications.
    00019 In no event shall INPE and Tecgraf / PUC-Rio be held liable to any party for direct,
    00020 indirect, special, incidental, or consequential damages arising out of the use
    00021 of this library and its documentation.
    00022 *************************************************************************************/
    00027 #ifndef  __TERRALIB_INTERNAL_SPATIALOPERATIONS_H
    00028 #define  __TERRALIB_INTERNAL_SPATIALOPERATIONS_H
    00029
    00030 #include "TeDatabase.h"
    00031 #include "TeRaster.h"
    00032
    00034 typedef vector<TeGeometry*> TeSelectedGeom;
    00035
    00037 TL_DLL string  getStringIds(TeKeys& IdsIn);
    00038
    00039
    00041
    00051 TL_DLL bool TeTopologicalRelation(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIdsIn,
    00052                                                                      TeDatabasePortal *portal, int relation, const string& actColTable="");
    00053
    00054
    00056
    00068 TL_DLL bool TeTopologicalRelation(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIdsIn,
    00069                                                                      const string& visGeomTable, TeGeomRep visRep, TeDatabasePortal *portal,
    00070                                                                      int relation, const string& visColTable="");
    00071
    00072
    00074
    00083 TL_DLL bool TeTopologicalRelation(const string& actGeomTable, TeGeomRep actRep, TeGeometry* geom,
    00084                                                                      TeDatabasePortal *portal, int relation, const string& actCollTable="");
    00085
    00086
    00088
    00099 TL_DLL bool TeTopologicalRelation(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIdsIn,
    00100                                                                      TeKeys& actIdsOut, TeDatabase* db, int relation, const string& actCollTable="");
    00101
    00102
    00104
    00117 TL_DLL bool TeTopologicalRelation(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIdsIn,
    00118                                                                      const string& visGeomTable, TeGeomRep visRep, TeKeys& visIdsOut,
    00119                                                                      TeDatabase* db, int relation, const string& visCollTable="", TeDatabase* = 0);
    00120
    00122
    00132 TL_DLL bool TeTopologicalRelation(const string& actGeomTable, TeGeomRep actRep, TeGeometry* geom,
    00133                                                                      TeKeys& actIdsOut, TeDatabase* db, int relation, const string& actCollTable="");
    00134
    00136
    00141 TL_DLL bool TeTopologicalRelation(const TePolygon* geom1, const TePolygon* geom2, int relation);
    00142
    00144
    00149 TL_DLL bool TeTopologicalRelation(const TePolygon* geom1, const TeLine2D* geom2, int relation);
    00150
    00152
    00157 TL_DLL bool TeTopologicalRelation(const TePolygon* geom1, const TePoint* geom2, int relation);
    00158
    00160
    00165 TL_DLL bool TeTopologicalRelation(const TeLine2D* geom1, const TeLine2D* geom2, int relation);
    00166
    00168
    00173 TL_DLL bool TeTopologicalRelation(const TeLine2D* geom1, const TePoint* geom2, int relation);
    00174
    00176
    00181 TL_DLL bool TeTopologicalRelation(const TePoint* geom1, const TePoint* geom2, int relation);
    00182
    00184
    00189 TL_DLL bool TeTopologicalRelation(const TeCell* geom1, const TeCell* geom2, int relation);
    00190
    00192
    00197 TL_DLL bool TeTopologicalRelation(const TeCell* geom1, const TePolygon* geom2, int relation);
    00198
    00200
    00205 TL_DLL bool TeTopologicalRelation(const TeCell* geom1, const TeLine2D* geom2, int relation);
    00206
    00208
    00213 TL_DLL bool TeTopologicalRelation(const TeCell* geom1, const TePoint* geom2, int relation);
    00214
    00216
    00225 TL_DLL bool TeGetWithinDistance(const string& actGeomTable, TeGeomRep actRep, const TeCoord2D& point, TeKeysToDist& IdsDistOut,
    00226                                                                    TeDatabase* db, const double& max_dist, const string& actCollTable="");
    00227
    00228
    00230
    00237 TL_DLL bool TeGetArea(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIdsIn, TeDatabase* db, double& area);
    00238
    00239
    00241 TL_DLL bool TeGetLength(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIdsIn, TeDatabase* db, double& length);
    00242
    00243
    00245 TL_DLL bool TeGetDistance(const string& actGeomTable, TeGeomRep actRep, TeKeys& IdsIn, TeDatabase* db, double& distance);
    00246
    00248
    00255 TL_DLL bool TeGetConvexHull(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIds, TeDatabase* db,
    00256                                                         TePolygonSet& convexHullSet);
    00257
    00258
    00260 TL_DLL bool TeGetCentroid(const string& actGeomTable, TeGeomRep actRep, TeDatabase* db, TePointSet& centroidSet,
    00261                                                TeKeys& actIds, const string& actCollTable="");
    00262
    00263
    00265 TL_DLL bool TeGetBuffer(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIds, TeDatabase* db,
    00266                                              TePolygonSet& bufferSet, double dist);
    00267
    00268
    00270 TL_DLL bool TeGetOverlay(const string& actGeomTable, TeGeomRep actRep, TeKeys& actIds, TeDatabase* db,
    00271                                               TeGeometryVect& geomVect, const short& operation);
    00272
    00279 TL_DLL TeRaster*
    00280 TeMask (TeRaster* rasterIn, TePolygon& poly, TeStrategicIterator st);
    00281
    00282 #endif
    00283

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines