Intersection.hpp
1 #ifndef DM_INTERSECTION_HPP_INCLUDED
2 #define DM_INTERSECTION_HPP_INCLUDED
3 
4 #ifdef _MSC_VER
5  #pragma once
6 #endif
7 
8 #include "DM/config.hpp"
9 #include "DM/AutoLink.hpp" //enable autolink
10 
11 #include "DM/IGeometry.hpp"
12 #include "DM/IPoint.hpp"
13 #include "DM/IBox.hpp"
14 #include "DM/IPolygon.hpp"
15 
16 DM_NAMESPACE_BEGIN
17 
18 namespace Intersection {
19 
20  //test for intersection (2d)
21  DM_API bool test2D(const IPoint &pt, const IBox &box);
22  DM_API bool test2D(const IBox &box, const IPoint &pt);
23 
24  DM_API bool test2D(const IBox &a, const IBox &b);
25 
26  DM_API bool test2D(const IPoint &pt, const IPolygon &poly);
27  DM_API bool test2D(const IPolygon &poly, const IPoint &pt);
28 
29  //perform intersection (2d) -> to come
30  //DM_API GeometryHandle compute2d(IBox &a, IBox &b);
31 }
32 
33 DM_NAMESPACE_END
34 
35 #endif //DM_INTERSECTION_HPP_INCLUDED