Go to the documentation of this file.
29 return ((
size_t)k.
x<<32)|((size_t)k.
y<<16)|k.
z;
49 void Save(
const char *filename);
68 bool IsBlocked(uint16_t x, uint16_t y, uint16_t z)
const
71 void SetBlocked(uint16_t x, uint16_t y, uint16_t z,
bool block)
104 int GetIndex(
int x,
int y,
int z)
const;
voxelGridAction MakeAction(int &x, int &y, int &z) const
void GLLabelState(const voxelGridState &, const char *) const
BitMapPic * GetImage(int face)
void GetActionOffsets(voxelGridAction a, int &x, int &y, int &z) const
void SetBlocked(const voxelGridState &s, bool block)
void Draw(Graphics::Display &display) const
void Fill(voxelGridState)
void GetActions(const voxelGridState &nodeID, std::vector< voxelGridAction > &actions) const
void GetStateFromHash(uint64_t parent, voxelGridState &s)
bool operator==(const voxelGridState &v1, const voxelGridState &v2)
void GetGLCornerCoordinate(const voxelGridState &, point3d &) const
void GLDrawLine(const voxelGridState &x, const voxelGridState &y) const
bool Legal(const voxelGridState &s) const
void Save(const char *filename)
void ApplyAction(voxelGridState &s, voxelGridAction a) const
bool GoalTest(const voxelGridState &node, const voxelGridState &goal) const
void GetSuccessors(const voxelGridState &nodeID, std::vector< voxelGridState > &neighbors) const
double GCost(const voxelGridState &node1, const voxelGridState &node2) const
bool CanMove(const voxelGridState &s1, const voxelGridState &s2) const
void GetGLCoordinate(const voxelGridState &, point3d &) const
void EfficientDraw() const
void GetLimits(int &x, int &y, int &z) const
bool IsBlocked(const voxelGridState &s) const
std::size_t operator()(const voxelGridState &k) const
uint64_t GetStateHash(const voxelGridState &node) const
uint64_t GetActionHash(voxelGridAction act) const
std::vector< uint32_t > indices
void SetBlocked(uint16_t x, uint16_t y, uint16_t z, bool block)
VoxelGrid(int x, int y, int z)
std::vector< bool > voxels
voxelGridState GetRandomState()
int GetIndex(const voxelGridState &s) const
std::ostream & operator<<(std::ostream &out, const voxelGridState &v)
void SetUseEfficientDraw(bool e)
std::vector< GLfloat > vertices
bool IsBlocked(uint16_t x, uint16_t y, uint16_t z) const
bool InvertAction(voxelGridAction &a) const
void GetCoordinates(int index, int &x, int &y, int &z) const
void SaveInMinBB(const char *filename)
Nodes to be stored within a Graph.
voxelGridState(uint16_t a, uint16_t b, uint16_t c)
double HCost(const voxelGridState &node1, const voxelGridState &node2) const
Heuristic value between two arbitrary nodes.