Fire Core  8.0.0.alpha
GIS framework per tutti gli usi
 Tutto Classi Namespace Funzioni Variabili Ridefinizioni di tipo (typedef) Tipi enumerati (enum) Valori del tipo enumerato Friend
Filter.hpp
1 // Copyright 2015 GEOSYSTEMS SRL
2 // All Rights Reserved.
3 
4 #ifndef FIRE_GEAR_GEOM_FILTER_HPP_INCLUDED
5 #define FIRE_GEAR_GEOM_FILTER_HPP_INCLUDED
6 
7 #include <exception>
8 #include <string>
9 
10 #include "fire/export.hpp"
11 
12 #include "fire/Filter.hpp"
13 #include "fire/gear/geom/GeometryType.hpp"
14 #include "fire/gear/geom/SpatialOperator.hpp"
15 
16 namespace fire {
17 namespace gear {
18 namespace geom {
19 class Geometry;
20 } // namespace geom
21 } // namespace gear
22 } // namespace fire
23 
30 namespace fire {
37 namespace gear {
44 namespace geom {
51 class FIRE_ENGINE_DLL Filter : public fire::Filter< fire::gear::geom::Geometry* > {
52  private:
73  std::string intersectionMatrix;
81 
82  public:
94  static Filter IsPoint();
106  static Filter IsLineString();
118  static Filter IsLinearRing();
130  static Filter IsPolygon();
142  static Filter IsMultiPoint();
154  static Filter IsMultiLineString();
166  static Filter IsMultiPolygon();
183  static Filter IsDisjoint(fire::gear::geom::Geometry* geometry);
200  static Filter IsTouches(fire::gear::geom::Geometry* geometry);
217  static Filter IsCrosses(fire::gear::geom::Geometry* geometry);
234  static Filter IsWithin(fire::gear::geom::Geometry* geometry);
251  static Filter IsContains(fire::gear::geom::Geometry* geometry);
268  static Filter IsEquals(fire::gear::geom::Geometry* geometry);
285  static Filter IsOverlaps(fire::gear::geom::Geometry* geometry);
302  static Filter IsCovers(fire::gear::geom::Geometry* geometry);
319  static Filter IsCoveredBy(fire::gear::geom::Geometry* geometry);
363  static Filter Relate(const std::string& intersectionMatrix, fire::gear::geom::Geometry* geometry);
409  Filter(const std::string& intersectionMatrix, fire::gear::geom::Geometry* geometry);
416  virtual ~Filter();
428  fire::gear::geom::Geometry* getGeometry() const;
445  virtual bool condition(fire::gear::geom::Geometry* geometry);
446 };
447 } // namespace geom
448 } // namespace gear
449 } // namespace fire
450 
451 #endif
Definition: Filter.hpp:51
GeometryType
Definition: GeometryType.hpp:43
SpatialOperator
Definition: SpatialOperator.hpp:41
Definition: Geometry.hpp:69
Classe per la gestione di un filtro.
Definition: Filter.hpp:25