ARGoS
3
A parallel, multi-engine simulator for swarm robotics
|
00001 00007 #ifndef PLANE_H 00008 #define PLANE_H 00009 00010 namespace argos { 00011 class CPlane; 00012 } 00013 00014 #include <argos3/core/utility/math/vector3.h> 00015 00016 namespace argos { 00017 00018 class CPlane { 00019 00020 public: 00021 00022 CPlane() : 00023 m_cNormal(CVector3::Z) {} 00024 00025 CPlane(const CVector3& c_position, 00026 const CVector3& c_normal) : 00027 m_cPosition(c_position), 00028 m_cNormal(c_normal) {} 00029 00030 ~CPlane() {} 00031 00032 inline const CVector3& GetPosition() const { 00033 return m_cPosition; 00034 } 00035 00036 inline void SetPosition(const CVector3& c_position) { 00037 m_cPosition = c_position; 00038 } 00039 00040 inline const CVector3& GetNormal() const { 00041 return m_cNormal; 00042 } 00043 00044 inline void SetNormal(const CVector3& c_normal) { 00045 m_cNormal = c_normal; 00046 } 00047 00048 private: 00049 00050 CVector3 m_cPosition; 00051 CVector3 m_cNormal; 00052 00053 }; 00054 00055 } 00056 00057 #endif