IFilterRegion.hpp
1 #ifndef DM_IFILTER_REGION_HPP_INCLUDED
2 #define DM_IFILTER_REGION_HPP_INCLUDED
3 
4 #include "DM/IFilter.hpp"
5 
6 DM_NAMESPACE_BEGIN
7 
8 class DM_API IFilterRegion : public IFilter
9 {
10 public:
12  {
13  enum Type
14  {
15  // Queries
16  intersects, // Result is valid if the 2 geometries intersect.
17  MaxQuery = intersects,
18  // Analyses
19  intersection // replace the submitted geometry with the intersection of the 2 geometries. Result is valid if the intersection is non-empty.
20  };
21  };
22 
23  // Pass n>=2 2D vertices as an array of 2n coordinates.
24  static IFilterRegion* New( const double *coordsXY, unsigned nCoordsXY, QueryOrAnalysis::Type queryOrAnalysis = QueryOrAnalysis::intersects );
25 
26 };
27 
29 
30 DM_NAMESPACE_END
31 
32 #endif // DM_IFILTER_REGION_HPP_INCLUDED