owlps/owlps-positioning/area.hh

92 lines
1.6 KiB
C++
Raw Normal View History

#ifndef _AREA_HH_
#define _AREA_HH_
#include <iostream>
#include <string>
#include "point.hh"
using namespace std;
using std::string;
class Area
{
protected:
string area_name;
float x_min;
float x_max;
float y_min;
float y_max;
float z_min;
float z_max;
public:
Area(const string &_name = "No name", const float &_x1 = 0, const float &_x2 = 0, const float &_y1 = 0, const float &_y2 = 0, const float &_z1 = 0, const float &_z2 = 0) ;
Area(const Area &a) ;
~Area() {};
bool containsPoint(const Point &p)const ;
string getName()const
{
return area_name ;
} ;
float getXmin()const
{
return x_min;
} ;
float getXmax()const
{
return x_max;
} ;
float getYmin()const
{
return y_min;
} ;
float getYmax()const
{
return y_max;
} ;
float getZmin()const
{
return z_min;
} ;
float getZmax()const
{
return z_max;
} ;
void setName(const string &_name)
{
area_name = _name ;
} ;
void setXmin(const float &v)
{
x_min = v;
} ;
void setXmax(const float &v)
{
x_max = v;
} ;
void setYmin(const float &v)
{
y_min = v;
} ;
void setYmax(const float &v)
{
y_max = v;
} ;
void setZmin(const float &v)
{
z_min = v;
} ;
void setZmax(const float &v)
{
z_max = v;
} ;
bool operator==(const Area &a)const ;
friend ostream &operator<<(ostream &os, const Area &a) ;
};
#endif // _AREA_HH_