A stand-alone, standard C++ class which represents each one of the cells of a gridmap and its typical members when used together with Fast Marching Methods. Inherited from Cell class, in this case the value_ member represents the distance value (or time of arrival) and occupancy_ represents the propagation velocity. More...
#include <fmcell.h>
Public Member Functions | |
FMCell () | |
Default constructor which performs and implicit Fast Marching-like initialization of the grid. | |
virtual void | setVelocity (double v) |
virtual void | setArrivalTime (double at) |
virtual void | setHeuristicTime (double hv) |
virtual void | setState (FMState state) |
virtual void | setBucket (int b) |
virtual void | setDefault () |
Sets default values for the cell. Concretely, restarts value_ = Inf, state_ = OPEN and hValue_ = 0 but occupancy_ is not modified. | |
std::string | type () |
virtual double | getArrivalTime () const |
virtual double | getHeuristicValue () const |
virtual double | getTotalValue () const |
virtual double | getVelocity () const |
virtual FMState | getState () const |
virtual int | getBucket () const |
Public Member Functions inherited from Cell | |
Cell () | |
Default constructor: sets value_ to -1 and occupancy_ to true (clear cell, not occupied). | |
Cell (double v, double o=1) | |
virtual void | setValue (double v) |
virtual void | setOccupancy (double o) |
virtual void | setIndex (int i) |
virtual double | getValue () const |
virtual double | getOccupancy () const |
virtual unsigned int | getIndex () const |
virtual bool | isOccupied () const |
Protected Attributes | |
FMState | state_ |
State of the cell. | |
int | bucket_ |
Used when sorted with FMUntidyQueue. | |
double | hValue_ |
Heuristic value. | |
Protected Attributes inherited from Cell | |
double | value_ |
Value of the cell. | |
double | occupancy_ |
Binary occupancy, true means clear, false occupied. | |
unsigned int | index_ |
Friends | |
std::ostream & | operator<< (std::ostream &os, const FMCell &c) |
IMPORTANT NOTE: no checks are done in the set functions. Copyright (C) 2014 Javier V. Gomez and Jose Pardeiro www.javiervgomez.com
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.