Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #pragma once
00028 #ifndef TestingPlanes_H_included
00029 #define TestingPlanes_H_included
00030
00031 #include "testing_object_base.h"
00032
00033 #include <vector>
00034 #include <Eigen/Dense>
00035
00036
00037 namespace srs_env_model
00038 {
00039
00043 class CTestingPlane : public CTestingObjectBase
00044 {
00045 public:
00047 typedef Eigen::Vector3f tPoint;
00048
00049 public:
00050 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
00051
00052 public:
00054 CTestingPlane();
00055
00057 CTestingPlane( const CTestingPlane &plane );
00058
00060 CTestingPlane operator =( const CTestingPlane &plane );
00061
00078 CTestingPlane( const tPoint &p1, const tPoint &p2, const tPoint &p3 );
00079
00081 CTestingPlane( const tPoint &point, const tPoint &normal );
00082
00084 void set( const tPoint &p1, const tPoint &p2, const tPoint &p3 );
00085
00087 void set( const tPoint &point, const tPoint &normal );
00088
00090 virtual bool isIn( double x, double y, double z );
00091
00092 protected:
00094 tPoint m_plane;
00095
00097 double m_d;
00098
00099 };
00100
00104 class CTestingPlanes : public CTestingObjectBase
00105 {
00106 public:
00108 typedef std::vector< CTestingPlane > tPlanesStack;
00109
00110 public:
00112 CTestingPlanes();
00113
00115 CTestingPlanes( const tPlanesStack & planes );
00116
00118 void set( const tPlanesStack &planes );
00119
00121 void addPlane( const CTestingPlane &plane ) { m_planes.push_back( plane ); }
00122
00124 void clearPlanes(){ m_planes.clear(); }
00125
00127 virtual bool isIn( double x, double y, double z );
00128
00129 protected:
00131 tPlanesStack m_planes;
00132
00133 };
00134
00135 }
00136
00137
00138
00139
00140
00141
00142 #endif
00143
00144
srs_env_model
Author(s): Vit Stancl (stancl@fit.vutbr.cz), Tomas Lokaj, Jan Gorig, Michal Spanel (spanel@fit.vutbr.cz)
autogenerated on Sun Jan 5 2014 11:50:50