Autoware.Auto
autoware::motion::planning::parking_planner::Polytope2D< T > Class Template Reference

Class describing a polytope in two-dimensional space. More...

#include <geometry.hpp>

Public Member Functions

 Polytope2D (const std::vector< Point2D< T >> &vertices) noexcept
 Construct a polyhedron. More...
 
void rotate_and_shift (const T rotation_angle, const Point2D< T > &rotation_center, const Point2D< T > &shift_vector)
 Rotate and shift the polytope. More...
 
bool contains_point (const Point2D< T > &point) const noexcept
 Check if polytope contains a point. More...
 
bool intersects_with (const Polytope2D< T > &other) const noexcept
 Check if polytope intersects with another. More...
 
const std::vector< Halfplane2D< T > > & get_halfplanes () const noexcept
 Getter for halfplanes. More...
 
const std::vector< Point2D< T > > & get_vertices () const noexcept
 Getter for vertices. More...
 

Detailed Description

template<typename T>
class autoware::motion::planning::parking_planner::Polytope2D< T >

Class describing a polytope in two-dimensional space.

Constructor & Destructor Documentation

◆ Polytope2D()

template<typename T>
autoware::motion::planning::parking_planner::Polytope2D< T >::Polytope2D ( const std::vector< Point2D< T >> &  vertices)
inlineexplicitnoexcept

Construct a polyhedron.

Parameters
[in]verticesvector of vertices, assumed to be "ordered anti-clockwise" with respect to their "center of mass"

Member Function Documentation

◆ contains_point()

template<typename T>
bool autoware::motion::planning::parking_planner::Polytope2D< T >::contains_point ( const Point2D< T > &  point) const
inlinenoexcept

Check if polytope contains a point.

◆ get_halfplanes()

template<typename T>
const std::vector<Halfplane2D<T> >& autoware::motion::planning::parking_planner::Polytope2D< T >::get_halfplanes ( ) const
inlinenoexcept

Getter for halfplanes.

◆ get_vertices()

template<typename T>
const std::vector<Point2D<T> >& autoware::motion::planning::parking_planner::Polytope2D< T >::get_vertices ( ) const
inlinenoexcept

Getter for vertices.

◆ intersects_with()

template<typename T>
bool autoware::motion::planning::parking_planner::Polytope2D< T >::intersects_with ( const Polytope2D< T > &  other) const
inlinenoexcept

Check if polytope intersects with another.

◆ rotate_and_shift()

template<typename T>
void autoware::motion::planning::parking_planner::Polytope2D< T >::rotate_and_shift ( const T  rotation_angle,
const Point2D< T > &  rotation_center,
const Point2D< T > &  shift_vector 
)
inline

Rotate and shift the polytope.


The documentation for this class was generated from the following file: