AURobotServers
4
|
Public Member Functions | |
int | getCellIdx (int nextID) |
void | getPoly (UPolygon *poly, double maxVal) |
void | init () |
bool | isBack (int nextID) |
bool | isFwd (int nextID) |
bool | isInRightY (double y) |
is this y-value inside right side of cell More... | |
void | link (UAvoidCell *arg1, UAvoidCell *arg2, UAvoidCell *arg3, UAvoidCell *arg4, bool openList) |
void | print (FILE *dest) |
bool | setCuts (double x, ULogFile *debugLog) |
void | setXLeft (double x) |
set x value for start positions More... | |
void | setXRight (double x) |
set x value for start positions More... | |
UAvoidCell () | |
void | unlinkOpen () |
Public Attributes | |
UAvoidCell * | cells [4] |
int | id |
ID of this cell. More... | |
UAvoidObst * | obsts [2] |
U2Dpos | oPoss [4] |
position of corner - if free space set to +/- 1e6 More... | |
|
inline |
Constructor
|
inline |
Is index to this ID
nextID | is the cell ID to look for. |
Referenced by UAvoidCellGraph::findCellPointPath().
|
inline |
Set cell corners into polygon
References UPolygon::add(), and UPolygon::setAsPolygon().
Referenced by UAvoidCellGraph::getCellPathPoly(), and UAvoidCellGraph::getCellPoly().
|
inline |
Clear cell
Referenced by UAvoidCellGraph::getNewCell().
|
inline |
Is this next ID a cell behind this cell - i.e. either cell[0] or cell[1]
|
inline |
Is this next ID a cell in front of this cell - i.e. either cell[2] or cell[3]
|
inline |
is this y-value inside right side of cell
|
inline |
Link this cell to these 4 other cells.
arg1 | is the previous (upper) left |
arg2 | is the previous lower left |
arg3 | is the next (upper) right cell, |
arg4 | is the next lower right cell. |
References cells.
Referenced by UAvoidCellGraph::makeCells().
|
inline |
|
inline |
Set intersection points for this open cell. Sets also the next cells further down the line.
x | is the x-intersection value. |
vt | is the related vertex |
References ULogFile::getF(), UAvoidVertexIdx::obst, U2Dpos::set(), and U2Dpos::y.
Referenced by UAvoidCellGraph::makeCells().
|
inline |
set x value for start positions
|
inline |
set x value for start positions
|
inline |
Remove this open cell from open cell list
Referenced by UAvoidCellGraph::makeCells().
UAvoidCell* UAvoidCell::cells[4] |
add punishment to this cell
value | is added to the cost of passing the cell Set const of this cell |
value | set as the cost of the cell neighboring cells top-left, bot-left, top-right, bot-right top is higher y-value not valid are set to NULL |
Referenced by UAvoidCellGraph::findCellPath(), UAvoidCellGraph::findCellPointPath(), link(), and UAvoidCellGraph::makeCells().
int UAvoidCell::id |
ID of this cell.
Referenced by UAvoidCellGraph::findCellPointPath(), UAvoidCellGraph::getCellPathPoly(), and UAvoidCellGraph::makeCells().
UAvoidObst* UAvoidCell::obsts[2] |
neighboring obstacles top (high y), bottom (low y) if free space then set to NULL
Referenced by UAvoidCellGraph::findCellPointPath(), and UAvoidCellGraph::makeCells().
U2Dpos UAvoidCell::oPoss[4] |
position of corner - if free space set to +/- 1e6
Referenced by UAvoidCellGraph::findCellPath(), UAvoidCellGraph::findCellPointPath(), and UAvoidCellGraph::makeCells().