libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
SignFieldCell.hpp
1 /*
2  * SignFieldCell.h
3  * BioMove3D
4  *
5  * Created by Jim Mainprice on 23/06/10.
6  * Copyright 2010 __MyCompanyName__. All rights reserved.
7  *
8  */
9 
10 #ifndef SIGNFIELDCELL_H
11 #define SIGNFIELDCELL_H
12 
13 
14 
15 #include <Eigen/Core>
16 #define EIGEN_USE_NEW_STDVECTOR
17 #include <Eigen/StdVector>
18 #include <Eigen/Geometry>
19 
20 
22 {
23 public:
24  Cell();
25  Cell(int i, Eigen::Vector3i pos , Eigen::Vector3d corner, HRICS::Grid* grid);
26 
27  ~Cell() { }
28 
29  double getCost();
30  // double getHRICostSpace();
31  void setBlankCost() { _CostIsComputed = false; this->resetExplorationStatus(); }
32 
33  Eigen::Vector3i getCoord() { return _Coord; }
34 
35  bool getOpen() { return _Open; }
36  void setOpen() { _Open = true; }
37 
38  bool getClosed() { return _Closed; }
39  void setClosed() { _Closed = true; }
40 
41  void resetExplorationStatus();
42 
43  GLint getDisplayList() { return m_list; }
44  void createDisplaylist();
45 
46  bool getIsCostComputed() { return _CostIsComputed; }
47 
48  void draw();
49 
50 private:
51 
52  Eigen::Vector3i _Coord;
53 
54  double* _v0; double* _v1; double* _v2; double* _v3;
55  double* _v4; double* _v5; double* _v6; double* _v7;
56 
57  bool _Open;
58  bool _Closed;
59 
60  bool _CostIsComputed;
61  double _Cost;
62 
63  GLint m_list;
64 
65 };
66 
67 
68 #endif // SIGNFIELDCELL
Definition: HRICS_Grid.hpp:16
Definition: SignFieldCell.hpp:21
Definition: ThreeDCell.hpp:25