owlps/GuiNuMo-server/area.hh

49 lines
1.3 KiB
C++

#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; } ;
friend ostream &operator<<(ostream &os, const Area &a) ;
};
#endif // _AREA_HH_