![]() |
Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
|
Define the GeoPlanner class. More...
#include "../../handlers/LiDARHandler.h"#include "../../util/GeospatialOperations.hpp"#include "../../util/logging/PathTracer.hpp"

Go to the source code of this file.
Classes | |
| struct | pathplanners::KDQueryPoint |
| Small POD used for KDTree searches (2D point) More... | |
| struct | pathplanners::PointKDAccessor |
| Accessor for KDTree that exposes easting/northing for both PointRow and KDQueryPoint. More... | |
| class | pathplanners::GeoPlanner |
| This class implements a geospatial path planner that uses AStar's algorithm with a bias towards travel scores to find the optimal path between two points. geospatial data is fetched from the LidarHandler, and the path is planned using the Eigen library for matrix operations. More... | |
| struct | pathplanners::GeoPlanner::PlannerState |
| This struct represents the state of a node in the path planning algorithm. More... | |
| struct | pathplanners::GeoPlanner::PlannerStateCompare |
| This struct is used to compare two PlannerState objects based on their cost. More... | |
| struct | pathplanners::GeoPlanner::TileKey |
| This struct represents a tile key in the implicit graph representation. We divide the plan into a regular grid of tiles of size dTileSize*dTileSize meters. A tile covering the real-world X coordinate in [i*dTileSize, (i+1)*dTileSize) and Y coordinate in [j*dTileSize, (j+1)*dTileSize) is represented by the key (i, j). More... | |
| struct | pathplanners::GeoPlanner::TileKeyHash |
| This struct is used to hash TileKey objects for use in unordered maps. It combines the X and Y coordinates to create a unique hash for each tile key. We hash stKey.nX and stKey.nY separately and combine them using XOR and bit shifting. More... | |
| struct | pathplanners::GeoPlanner::TileKeyEqual |
| This struct is used to compare two TileKey objects for equality. After the hashbuckets narrow down candidates, we need to still confirm that the X and Y coordinates are equal to ensure they are the same tile. More... | |
Namespaces | |
| namespace | pathplanners |
| This namespace stores classes, functions, and structs that are used to implement different path planner algorithms used by the rover to determine the optimal path to take for any given situation. | |
Typedefs | |
| using | pathplanners::KDTree2D = KDTree::KDTree< 2, LiDARHandler::PointRow, PointKDAccessor > |
Define the GeoPlanner class.