libstp
Robotics library for Botball
Loading...
Searching...
No Matches
Collision.hpp File Reference
#include "libstp/sim/Pose2D.hpp"
#include "libstp/sim/RobotConfig.hpp"
#include "libstp/sim/WorldMap.hpp"
#include <optional>
#include <vector>
Include dependency graph for Collision.hpp:

Go to the source code of this file.

Classes

struct  libstp::sim::collision::CollisionInfo

Namespaces

namespace  libstp
namespace  libstp::sim
namespace  libstp::sim::collision

Functions

std::vector< MapSegment > libstp::sim::collision::buildCollisionWalls (const WorldMap &map)
std::vector< MapSegment > libstp::sim::collision::buildCollisionWalls (const WorldMap &map, std::size_t layerIdx)
std::optional< CollisionInfo > libstp::sim::collision::findCollision (const Pose2D &pose, const Vec2 &moveVec, const RobotConfig &robot, const std::vector< MapSegment > &walls)
Pose2D libstp::sim::collision::resolveAgainstWall (const Pose2D &pose, const CollisionInfo &collision, const RobotConfig &robot)
std::vector< Pose2D > libstp::sim::collision::simulateSegment (const Pose2D &start, const Pose2D &target, const RobotConfig &robot, const std::vector< MapSegment > &walls)
bool libstp::sim::collision::checkRobotCollision (const Pose2D &pose, const RobotConfig &robot, const std::vector< MapSegment > &walls)
float libstp::sim::collision::raycastDistanceCm (float originX, float originY, float angleRad, float maxDistanceCm, const std::vector< MapSegment > &walls)