Go to the documentation of this file.
63 void AddMove(
unsigned int x,
unsigned int y,
moveDir dir,
bool local);
66 uint8_t
GetMoves(
int x,
int y)
const;
79 bool CanPass(
unsigned int x,
unsigned int y,
int offsetx,
int offsety)
const;
84 int LabelAreas(std::vector<int> &labels, std::vector<int> &counts, std::vector<int> &heights);
86 int BFS(std::vector<int> &labels,
int offset,
int label);
242 void AddEdge(
int sec1,
int reg1,
int sec2,
int reg2,
int weight);
243 void AddMapPoints(
Map *map, std::vector<bool> &visited,
int x,
int y,
int elevation);
246 void RemoveEdge(
int sec1,
int reg1,
int sec2,
int reg2,
int weight);
258 GLdouble &x, GLdouble &y, GLdouble &z,
259 GLdouble &r, GLdouble &h)
const;
std::vector< SectorData > sectors
uint64_t GetActionHash(action3d act) const
void RemoveEdge(EdgeData &e)
int GetHeightOffset(unsigned int x, unsigned int y) const
int GetSector(int x, int y) const
void SetHeightOffset(int x, int y, int height)
void AddBlocked(int x, int y)
GridData(const GridData ©_from_me)
uint8_t GetMoves(int x, int y) const
void AddEdge(state3d &from, state3d &to)
uint8_t blockedPointCount
int indexFromXY(int x, int y)
static bool operator==(const state3d &l1, const state3d &l2)
bool AddPoint(int x, int y, int height)
void GetPointFromCoordinate(point3d loc, int &px, int &py, int &pz) const
void RemovePoint(int x, int y)
void ClearMoves(int x, int y)
bool AddPoint(int x, int y, int z)
Map3DGrid(int width, int height, int theSectorSize)
void AddMapPoints(Map *map, std::vector< bool > &visited, int x, int y, int elevation)
void SetDrawGrid(bool draw)
std::vector< EdgeData > edges
bool RemovePoint(int x, int y, int z)
int GetBlocked(int x, int y)
std::vector< RegionData > regions
bool RemovePoint(int x, int y, int z, bool split=true)
void RemoveEdge(int sec1, int reg1, int sec2, int reg2, int weight)
bool GoalTest(const state3d &node, const state3d &goal) const
int ReMove(unsigned index, moveDir dir)
state3d(int s, int r, int o)
bool CanPass(unsigned int x, unsigned int y, int offsetx, int offsety) const
void GetActions(const state3d &nodeID, std::vector< action3d > &actions) const
void GetXYZFromState(const state3d &s, int &x, int &y, int &z) const
int FindNearState(int x, int y, int z, state3d &s) const
void AddEdge(EdgeData &e)
void GLDrawLine(const state3d &x, const state3d &y) const
int AddMove(unsigned index, moveDir dir, bool local)
void SubtractBlocked(int x, int y)
void ApplyAction(state3d &s, action3d a) const
int AddGridEdge(state3d &from, state3d &to, bool local)
int GetAbstractionBytesUsed()
double HCost(const state3d &node1, const state3d &node2) const
Heuristic value between two arbitrary nodes.
uint64_t GetStateHash(const state3d &node) const
int RemoveGridEdge(state3d &from, state3d &to)
void xyFromIndex(int index, int &x, int &y)
int BFS(std::vector< int > &labels, int offset, int label)
uint8_t GetMoveLocality(int x, int y) const
int RemoveSectorEdge(state3d &from, state3d &to)
void RemoveIntraRegionEdges(int xRegLoc, int yRegLoc)
void GetXYFromState(const state3d &s, int &x, int &y) const
int AddSectorEdge(state3d &from, state3d &to)
void Init(int sector, int region, int offset)
void AddMap(Map *map, int elevation)
void GetStateFromXYZ(state3d &s, int x, int y, int z) const
bool AddPoint(int x, int y, int z)
bool AddPoint(int x, int y, int z)
EdgeData(int sec, int reg, int sup)
std::vector< std::string > split(const std::string &s, char delim)
Splits a string into elements.
int InternalRemovePoint(int x, int y, int z)
int LabelAreas(std::vector< int > &labels, std::vector< int > &counts, std::vector< int > &heights)
void GetOpenGLCoord(int xLoc, int yLoc, int zLoc, GLdouble &x, GLdouble &y, GLdouble &z, GLdouble &r, GLdouble &h) const
void OpenGLDraw(const state3d &, const action3d &) const
bool CanAddPoint(int x, int y, int z)
action3d GetAction(const state3d &s1, const state3d &s2) const
void RedoCenterLocation()
double GCost(const state3d &node1, const state3d &node2) const
bool InvertAction(action3d &a) const
Nodes to be stored within a Graph.
A tile-based representation of the world.
void GetSuccessors(const state3d &nodeID, std::vector< state3d > &neighbors) const
bool IsPointPassable(unsigned int x, unsigned int y) const
void AddIntraRegionEdges(int xRegLoc, int yRegLoc)