Helios++
Helios software for LiDAR simulations
PyAABBWrapper.h
1 #pragma once
2 
3 #ifdef PYTHON_BINDING
4 
5 #include <PyVertexWrapper.h>
6 
7 namespace pyhelios{
8 
17 public:
18  // *** ATTRIBUTE *** //
19  // ******************* //
20  AABB *aabb;
21 
22  // *** CONSTRUCTION / DESTRUCTION *** //
23  // ************************************ //
24  PyAABBWrapper(AABB *aabb) : aabb(aabb) {}
25  virtual ~PyAABBWrapper() = default;
26 
27  // *** GETTERS and SETTERS *** //
28  // ***************************** //
29  inline PyVertexWrapper * getMinVertex()
30  {return new PyVertexWrapper(aabb->vertices);}
31  inline PyVertexWrapper * getMaxVertex()
32  {return new PyVertexWrapper(aabb->vertices + 1);}
33 
34  // *** TO STRING *** //
35  // ******************* //
36  inline std::string toString(){return aabb->toString();}
37 };
38 
39 }
40 
41 #endif
Class representing an Axis Aligned Bounding Box (AABB)
Definition: AABB.h:10
Vertex vertices[2]
Vertices defining the axis aligned bounding box.
Definition: AABB.h:38
std::string toString()
Bbuild a string representing the axis aligned bounding box.
Definition: AABB.cpp:153
Wrapper for AABB class.
Definition: PyAABBWrapper.h:16
Wrapper for Vertex class.
Definition: PyVertexWrapper.h:17