00001 /* 00002 * Copyright (C) 2007 A.N. Yzelman 00003 * Released under LGPL, see license.txt 00004 * 00005 * Last modified at 8th of March, 2007, by A.N. Yzelman 00006 * 00007 * Polytope.h: Defines a polytope (a polygon in any number of dimensions). 00008 * 00009 */ 00010 00011 #ifndef _H_POLYTOPE 00012 #define _H_POLYTOPE 00013 #include <vector> 00014 #include "Point.h" 00015 00021 class Polytope { 00022 private: 00024 vector<Point> _points; 00025 00027 int identification; 00028 00029 public: 00030 00037 Polytope( vector<Point> points, int _id ) { _points = points; identification = _id; } 00038 00045 double getMaxCoordinateOnDimension( const int dimension ) const; 00046 00053 double getMinCoordinateOnDimension( const int dimension ) const; 00054 00061 Point getCoordinate( const int i ) const; 00062 00069 int getNumberOfAngles() const; 00070 00076 int getDimension() const; 00077 00083 int getIdentification() const; 00084 }; 00085 00086 #endif