Autoware.Auto
autoware::common::had_map_utils Namespace Reference

Typedefs

using Kernel = CGAL::Exact_predicates_exact_constructions_kernel
 
using CGAL_Point = Kernel::Point_2
 
using CGAL_Polygon = CGAL::Polygon_2< Kernel >
 
using CGAL_Polygon_with_holes = CGAL::Polygon_with_holes_2< Kernel >
 

Functions

lanelet::Polygon3d HAD_MAP_UTILS_PUBLIC coalesce_drivable_areas (const autoware_auto_msgs::msg::Route &route, const lanelet::LaneletMapPtr &lanelet_map_ptr)
 
void HAD_MAP_UTILS_PUBLIC toBinaryMsg (const std::shared_ptr< lanelet::LaneletMap > &map, autoware_auto_msgs::msg::HADMapBin &msg)
 
void HAD_MAP_UTILS_PUBLIC fromBinaryMsg (const autoware_auto_msgs::msg::HADMapBin &msg, std::shared_ptr< lanelet::LaneletMap > &map)
 
lanelet::Areas HAD_MAP_UTILS_PUBLIC getAreaLayer (const lanelet::LaneletMapPtr ll_map)
 
lanelet::Areas HAD_MAP_UTILS_PUBLIC subtypeAreas (const lanelet::Areas areas, const char subtype[])
 
lanelet::Polygons3d HAD_MAP_UTILS_PUBLIC getPolygonLayer (const lanelet::LaneletMapPtr ll_map)
 
lanelet::Polygons3d HAD_MAP_UTILS_PUBLIC subtypePolygons (const lanelet::Polygons3d polygons, const char subtype[])
 
lanelet::LineStrings3d HAD_MAP_UTILS_PUBLIC getLineStringLayer (const lanelet::LaneletMapPtr ll_map)
 
lanelet::LineStrings3d HAD_MAP_UTILS_PUBLIC subtypeLineStrings (const lanelet::LineStrings3d linestrings, const char subtype[])
 
lanelet::ConstLanelets HAD_MAP_UTILS_PUBLIC getConstLaneletLayer (const std::shared_ptr< lanelet::LaneletMap > &ll_map)
 
lanelet::Lanelets HAD_MAP_UTILS_PUBLIC getLaneletLayer (const std::shared_ptr< lanelet::LaneletMap > &ll_map)
 
void HAD_MAP_UTILS_PUBLIC overwriteLaneletsCenterline (lanelet::LaneletMapPtr lanelet_map, const autoware::common::types::bool8_t force_overwrite)
 
lanelet::LineString3d HAD_MAP_UTILS_PUBLIC generateFineCenterline (const lanelet::ConstLanelet &lanelet_obj, const float64_t resolution)
 
void HAD_MAP_UTILS_PUBLIC setColor (std_msgs::msg::ColorRGBA *cl, const float32_t &r, const float32_t &g, const float32_t &b, const float32_t &a)
 Set set rgba information to a Color Object. More...
 
void HAD_MAP_UTILS_PUBLIC setMarkerHeader (visualization_msgs::msg::Marker *m, const int32_t &id, const rclcpp::Time &t, const std::string &frame_id, const std::string &ns, const std_msgs::msg::ColorRGBA &c, const int32_t &action, const int32_t &type, const float32_t &scale)
 Set the header information to a marker object. More...
 
visualization_msgs::msg::Marker HAD_MAP_UTILS_PUBLIC lineString2Marker (const rclcpp::Time &t, const lanelet::LineString3d &ls, const std::string &frame_id, const std::string &ns, const std_msgs::msg::ColorRGBA &c, const float32_t &lss)
 creates marker with type LINE_STRIP from a lanelet::LineString3d object More...
 
visualization_msgs::msg::Marker HAD_MAP_UTILS_PUBLIC lineString2Marker (const rclcpp::Time &t, const lanelet::ConstLineString3d &ls, const std::string &frame_id, const std::string &ns, const std_msgs::msg::ColorRGBA &c, const float32_t &lss)
 creates marker with type LINE_STRIP from a lanelet::ConstLineString3d object More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC lineStringsAsMarkerArray (const rclcpp::Time &t, const std::string &ns, const lanelet::LineStrings3d &linestrings, const std_msgs::msg::ColorRGBA &c)
 converts lanelet::LineString into markers with type LINE_STRIP More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC laneletsBoundaryAsMarkerArray (const rclcpp::Time &t, const lanelet::ConstLanelets &lanelets, const std_msgs::msg::ColorRGBA &c, const bool8_t &viz_centerline)
 converts outer bound of lanelet::Lanelet into markers with type LINE_STRIP More...
 
visualization_msgs::msg::Marker HAD_MAP_UTILS_PUBLIC basicPolygon2Marker (const rclcpp::Time &t, const int32_t &line_id, const lanelet::BasicPolygon3d &pg, const std::string &frame_id, const std::string &ns, const std_msgs::msg::ColorRGBA &c, const float32_t &lss)
 creates marker with type LINE_STRIP from a lanelet::BasicPolygon object More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC areasBoundaryAsMarkerArray (const rclcpp::Time &t, const std::string &ns, const lanelet::Areas &areas, const std_msgs::msg::ColorRGBA &c)
 converts outer bound of lanelet::Area into markers with type LINE_STRIP More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC polygonsBoundaryAsMarkerArray (const rclcpp::Time &t, const std::string &ns, const lanelet::Polygons3d &polygons, const std_msgs::msg::ColorRGBA &c)
 converts outer bound of lanelet::Polygon into markers with type LINE_STRIP More...
 
visualization_msgs::msg::Marker HAD_MAP_UTILS_PUBLIC bbox2Marker (const rclcpp::Time &t, const int32_t &line_id, const float64_t lower[], const float64_t upper[], const std::string &frame_id, const std::string &ns, const std_msgs::msg::ColorRGBA &c, const float32_t &lss)
 creates marker with type LINE_STRIP from a bounding box More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC boundingBoxAsMarkerArray (const rclcpp::Time &t, const std::string &ns, const float64_t upper[], const float64_t lower[], const std_msgs::msg::ColorRGBA &c)
 creates marker array from bounding box More...
 
std::vector< geometry_msgs::msg::Polygon > HAD_MAP_UTILS_PUBLIC lanelet2Triangle (const lanelet::ConstLanelet &ll)
 converts area enclosed by lanelet::Lanelet into list of triangles. More...
 
std::vector< geometry_msgs::msg::Polygon > HAD_MAP_UTILS_PUBLIC polygon2Triangle (const geometry_msgs::msg::Polygon &polygon)
 converts area enclosed by geometry_msg::msg::Polygon into list of triangles. More...
 
geometry_msgs::msg::Polygon HAD_MAP_UTILS_PUBLIC area2Polygon (const lanelet::ConstArea &area)
 converts lanelet::Area into geometry_msgs::msg::Polygon type More...
 
geometry_msgs::msg::Polygon HAD_MAP_UTILS_PUBLIC lanelet2Polygon (const lanelet::ConstLanelet &ll)
 converts lanelet::Lanelet into geometry_msgs::msg::Polygon type More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC laneletsAsTriangleMarkerArray (const rclcpp::Time &t, const std::string &ns, const lanelet::ConstLanelets &lanelets, const std_msgs::msg::ColorRGBA &c)
 converts bounded area by lanelet::Lanelet into triangle markers More...
 
visualization_msgs::msg::MarkerArray HAD_MAP_UTILS_PUBLIC areasAsTriangleMarkerArray (const rclcpp::Time &t, const std::string &ns, const lanelet::Areas &areas, const std_msgs::msg::ColorRGBA &c)
 converts bounded area by lanelet::Area into triangle markers More...
 
std::vector< float64_t > calculateSegmentDistances (const lanelet::ConstLineString3d &line_string)
 
std::vector< float64_t > calculateAccumulatedLengths (const lanelet::ConstLineString3d &line_string)
 
std::pair< size_t, size_t > findNearestIndexPair (const std::vector< float64_t > &accumulated_lengths, const float64_t target_length)
 
std::vector< lanelet::BasicPoint3d > resamplePoints (const lanelet::ConstLineString3d &line_string, const int32_t num_segments)
 
template<typename T >
bool8_t exists (const std::unordered_set< T > &set, const T &element)
 
geometry_msgs::msg::Point toGeomMsgPt (const geometry_msgs::msg::Point32 &src)
 
geometry_msgs::msg::Point32 toGeomMsgPt32 (const lanelet::BasicPoint3d &src)
 
void adjacentPoints (const size_t i, const size_t N, const geometry_msgs::msg::Polygon poly, geometry_msgs::msg::Point32 *p0, geometry_msgs::msg::Point32 *p1, geometry_msgs::msg::Point32 *p2)
 
std::vector< geometry_msgs::msg::Polygon > area2Triangle (const lanelet::Area &area)
 
bool8_t isAcuteAngle (const geometry_msgs::msg::Point32 &vertex_a, const geometry_msgs::msg::Point32 &vertex_o, const geometry_msgs::msg::Point32 &vertex_b)
 
bool8_t isWithinTriangle (const geometry_msgs::msg::Point32 &vertex_a, const geometry_msgs::msg::Point32 &vertex_b, const geometry_msgs::msg::Point32 &vertex_c, const geometry_msgs::msg::Point32 &pt)
 

Typedef Documentation

◆ CGAL_Point

using autoware::common::had_map_utils::CGAL_Point = typedef Kernel::Point_2

◆ CGAL_Polygon

using autoware::common::had_map_utils::CGAL_Polygon = typedef CGAL::Polygon_2<Kernel>

◆ CGAL_Polygon_with_holes

using autoware::common::had_map_utils::CGAL_Polygon_with_holes = typedef CGAL::Polygon_with_holes_2<Kernel>

◆ Kernel

using autoware::common::had_map_utils::Kernel = typedef CGAL::Exact_predicates_exact_constructions_kernel

Function Documentation

◆ adjacentPoints()

void autoware::common::had_map_utils::adjacentPoints ( const size_t  i,
const size_t  N,
const geometry_msgs::msg::Polygon  poly,
geometry_msgs::msg::Point32 *  p0,
geometry_msgs::msg::Point32 *  p1,
geometry_msgs::msg::Point32 *  p2 
)

◆ area2Polygon()

geometry_msgs::msg::Polygon autoware::common::had_map_utils::area2Polygon ( const lanelet::ConstArea &  area)

converts lanelet::Area into geometry_msgs::msg::Polygon type

Parameters
areainput area
Returns
converted geometry_msgs::msg::Polygon

◆ area2Triangle()

std::vector<geometry_msgs::msg::Polygon> autoware::common::had_map_utils::area2Triangle ( const lanelet::Area &  area)

◆ areasAsTriangleMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::areasAsTriangleMarkerArray ( const rclcpp::Time &  t,
const std::string &  ns,
const lanelet::Areas &  areas,
const std_msgs::msg::ColorRGBA &  c 
)

converts bounded area by lanelet::Area into triangle markers

Parameters
tTime set to returned marker message
nsNamespace set to returned marker message
areasinput lanelet::Area objects
cColor of the marker array
Returns
Converted triangle markers enclosed by the area

◆ areasBoundaryAsMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::areasBoundaryAsMarkerArray ( const rclcpp::Time &  t,
const std::string &  ns,
const lanelet::Areas &  areas,
const std_msgs::msg::ColorRGBA &  c 
)

converts outer bound of lanelet::Area into markers with type LINE_STRIP

Parameters
ttime set to returned marker message
nsnamespace set to the marker
areasinput area objects
ccolor of the marker
Returns
created visualization_msgs::msg::MarkerArray

◆ basicPolygon2Marker()

visualization_msgs::msg::Marker autoware::common::had_map_utils::basicPolygon2Marker ( const rclcpp::Time &  t,
const int32_t &  line_id,
const lanelet::BasicPolygon3d &  pg,
const std::string &  frame_id,
const std::string &  ns,
const std_msgs::msg::ColorRGBA &  c,
const float32_t &  lss 
)

creates marker with type LINE_STRIP from a lanelet::BasicPolygon object

Parameters
ttimestamp set to the marker
line_idid set to the marker
pginput polygon
frame_idframe id set to the marker
nsnamespace set to the marker
ccolor of the marker
lsslinestrip scale (i.e. width)
Returns
created visualization_msgs::msg::Marker

◆ bbox2Marker()

visualization_msgs::msg::Marker autoware::common::had_map_utils::bbox2Marker ( const rclcpp::Time &  t,
const int32_t &  line_id,
const float64_t  lower[],
const float64_t  upper[],
const std::string &  frame_id,
const std::string &  ns,
const std_msgs::msg::ColorRGBA &  c,
const float32_t &  lss 
)

creates marker with type LINE_STRIP from a bounding box

Parameters
tTime set to returned marker message
line_idid set to marker
lowerlower bound of the bounding box with length 3(x,y,z)
upperupper bound of the bounding box with length 3(x,y,z)
frame_idframe id set to the marker
nsnamespace set to the marker
ccolor of the marker
lsslinestrip scale (i.e. width)
Returns
created visualization_msgs::msg::Marker

◆ boundingBoxAsMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::boundingBoxAsMarkerArray ( const rclcpp::Time &  t,
const std::string &  ns,
const float64_t  upper[],
const float64_t  lower[],
const std_msgs::msg::ColorRGBA &  c 
)

creates marker array from bounding box

Parameters
tTime set to returned marker message
nsNamespace set to returned marker message
upperupper bound of the bounding box with length 3(x,y,z)
lowerlower bound of the bounding box with length 3(x,y,z)
cColor of the marker array
Returns
created visualization_msgs::msg::MarkerArray

◆ calculateAccumulatedLengths()

std::vector<float64_t> autoware::common::had_map_utils::calculateAccumulatedLengths ( const lanelet::ConstLineString3d &  line_string)

◆ calculateSegmentDistances()

std::vector<float64_t> autoware::common::had_map_utils::calculateSegmentDistances ( const lanelet::ConstLineString3d &  line_string)

◆ coalesce_drivable_areas()

lanelet::Polygon3d autoware::common::had_map_utils::coalesce_drivable_areas ( const autoware_auto_msgs::msg::Route &  route,
const lanelet::LaneletMapPtr &  lanelet_map_ptr 
)

◆ exists()

template<typename T >
bool8_t autoware::common::had_map_utils::exists ( const std::unordered_set< T > &  set,
const T &  element 
)

◆ findNearestIndexPair()

std::pair<size_t, size_t> autoware::common::had_map_utils::findNearestIndexPair ( const std::vector< float64_t > &  accumulated_lengths,
const float64_t  target_length 
)

◆ fromBinaryMsg()

void autoware::common::had_map_utils::fromBinaryMsg ( const autoware_auto_msgs::msg::HADMapBin &  msg,
std::shared_ptr< lanelet::LaneletMap > &  map 
)

◆ generateFineCenterline()

lanelet::LineString3d autoware::common::had_map_utils::generateFineCenterline ( const lanelet::ConstLanelet &  lanelet_obj,
const float64_t  resolution 
)

◆ getAreaLayer()

lanelet::Areas autoware::common::had_map_utils::getAreaLayer ( const lanelet::LaneletMapPtr  ll_map)

◆ getConstLaneletLayer()

lanelet::ConstLanelets autoware::common::had_map_utils::getConstLaneletLayer ( const std::shared_ptr< lanelet::LaneletMap > &  ll_map)

◆ getLaneletLayer()

lanelet::Lanelets autoware::common::had_map_utils::getLaneletLayer ( const std::shared_ptr< lanelet::LaneletMap > &  ll_map)

◆ getLineStringLayer()

lanelet::LineStrings3d autoware::common::had_map_utils::getLineStringLayer ( const lanelet::LaneletMapPtr  ll_map)

◆ getPolygonLayer()

lanelet::Polygons3d autoware::common::had_map_utils::getPolygonLayer ( const lanelet::LaneletMapPtr  ll_map)

◆ isAcuteAngle()

bool8_t autoware::common::had_map_utils::isAcuteAngle ( const geometry_msgs::msg::Point32 &  vertex_a,
const geometry_msgs::msg::Point32 &  vertex_o,
const geometry_msgs::msg::Point32 &  vertex_b 
)

◆ isWithinTriangle()

bool8_t autoware::common::had_map_utils::isWithinTriangle ( const geometry_msgs::msg::Point32 &  vertex_a,
const geometry_msgs::msg::Point32 &  vertex_b,
const geometry_msgs::msg::Point32 &  vertex_c,
const geometry_msgs::msg::Point32 &  pt 
)

◆ lanelet2Polygon()

geometry_msgs::msg::Polygon autoware::common::had_map_utils::lanelet2Polygon ( const lanelet::ConstLanelet &  ll)

converts lanelet::Lanelet into geometry_msgs::msg::Polygon type

Parameters
llinput lanelet
Returns
converted geometry_msgs::msg::Polygon

◆ lanelet2Triangle()

std::vector< geometry_msgs::msg::Polygon > autoware::common::had_map_utils::lanelet2Triangle ( const lanelet::ConstLanelet &  ll)

converts area enclosed by lanelet::Lanelet into list of triangles.

Parameters
llinput lanelet
Returns
result of triangulation

◆ laneletsAsTriangleMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::laneletsAsTriangleMarkerArray ( const rclcpp::Time &  t,
const std::string &  ns,
const lanelet::ConstLanelets &  lanelets,
const std_msgs::msg::ColorRGBA &  c 
)

converts bounded area by lanelet::Lanelet into triangle markers

Parameters
tTime set to returned marker message
nsNamespace set to returned marker message
laneletsinput lanelet::Lanelet
cColor of the marker array
Returns
Converted triangle markers enclosed by the Lanelet

◆ laneletsBoundaryAsMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::laneletsBoundaryAsMarkerArray ( const rclcpp::Time &  t,
const lanelet::ConstLanelets &  lanelets,
const std_msgs::msg::ColorRGBA &  c,
const bool8_t &  viz_centerline 
)

converts outer bound of lanelet::Lanelet into markers with type LINE_STRIP

Parameters
ttime set to returned marker message
laneletsinput lanelet objects
ccolor of the marker
viz_centerlineoption to add centerline to the marker array
Returns
created visualization_msgs::msg::MarkerArray

◆ lineString2Marker() [1/2]

visualization_msgs::msg::Marker autoware::common::had_map_utils::lineString2Marker ( const rclcpp::Time &  t,
const lanelet::ConstLineString3d &  ls,
const std::string &  frame_id,
const std::string &  ns,
const std_msgs::msg::ColorRGBA &  c,
const float32_t &  lss 
)

creates marker with type LINE_STRIP from a lanelet::ConstLineString3d object

Parameters
ttimestamp set to the marker
lsinput linestring
frame_idframe id set to the marker
nsnamespace set to the marker
ccolor of the marker
lsslinestrip scale (i.e. width)
Returns
created visualization_msgs::msg::Marker

◆ lineString2Marker() [2/2]

visualization_msgs::msg::Marker autoware::common::had_map_utils::lineString2Marker ( const rclcpp::Time &  t,
const lanelet::LineString3d &  ls,
const std::string &  frame_id,
const std::string &  ns,
const std_msgs::msg::ColorRGBA &  c,
const float32_t &  lss 
)

creates marker with type LINE_STRIP from a lanelet::LineString3d object

Parameters
ttimestamp set to the marker
lsinput linestring
frame_idframe id set to the marker
nsnamespace set to the marker
ccolor of the marker
lsslinestrip scale (i.e. width)
Returns
created visualization_msgs::msg::Marker

◆ lineStringsAsMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::lineStringsAsMarkerArray ( const rclcpp::Time &  t,
const std::string &  ns,
const lanelet::LineStrings3d &  linestrings,
const std_msgs::msg::ColorRGBA &  c 
)

converts lanelet::LineString into markers with type LINE_STRIP

Parameters
ttime set to returned marker message
nsnamespace set to the marker
linestringsinput linestring objects
ccolor of the marker
Returns
created visualization_msgs::msg::MarkerArray

◆ overwriteLaneletsCenterline()

void autoware::common::had_map_utils::overwriteLaneletsCenterline ( lanelet::LaneletMapPtr  lanelet_map,
const autoware::common::types::bool8_t  force_overwrite 
)

◆ polygon2Triangle()

std::vector< geometry_msgs::msg::Polygon > autoware::common::had_map_utils::polygon2Triangle ( const geometry_msgs::msg::Polygon &  polygon)

converts area enclosed by geometry_msg::msg::Polygon into list of triangles.

Parameters
polygoninput polygon
Returns
result of triangulation

◆ polygonsBoundaryAsMarkerArray()

visualization_msgs::msg::MarkerArray autoware::common::had_map_utils::polygonsBoundaryAsMarkerArray ( const rclcpp::Time &  t,
const std::string &  ns,
const lanelet::Polygons3d &  polygons,
const std_msgs::msg::ColorRGBA &  c 
)

converts outer bound of lanelet::Polygon into markers with type LINE_STRIP

Parameters
tTime set to returned marker message
nsnamespace set to the marker
polygonsinput polygons
ccolor of the marker
Returns
created visualization_msgs::msg::MarkerArray

◆ resamplePoints()

std::vector<lanelet::BasicPoint3d> autoware::common::had_map_utils::resamplePoints ( const lanelet::ConstLineString3d &  line_string,
const int32_t  num_segments 
)

◆ setColor()

void autoware::common::had_map_utils::setColor ( std_msgs::msg::ColorRGBA *  cl,
const float32_t &  r,
const float32_t &  g,
const float32_t &  b,
const float32_t &  a 
)

Set set rgba information to a Color Object.

Parameters
[out]clcolor object to be set
rred value
ggreen value
bblue value
aalpha value

◆ setMarkerHeader()

void autoware::common::had_map_utils::setMarkerHeader ( visualization_msgs::msg::Marker *  m,
const int32_t &  id,
const rclcpp::Time &  t,
const std::string &  frame_id,
const std::string &  ns,
const std_msgs::msg::ColorRGBA &  c,
const int32_t &  action,
const int32_t &  type,
const float32_t &  scale 
)

Set the header information to a marker object.

Parameters
minput marker
idid of the marker
ttimestamp of the marker
frame_idframe of the marker
nsnamespace of the marker
ccolor of the marker
actionaction used to visualize the marker
typetype of the marker
scalescale of the marker
Returns
visualization_msgs::msg::Marker

◆ subtypeAreas()

lanelet::Areas autoware::common::had_map_utils::subtypeAreas ( const lanelet::Areas  areas,
const char  subtype[] 
)

◆ subtypeLineStrings()

lanelet::LineStrings3d autoware::common::had_map_utils::subtypeLineStrings ( const lanelet::LineStrings3d  linestrings,
const char  subtype[] 
)

◆ subtypePolygons()

lanelet::Polygons3d autoware::common::had_map_utils::subtypePolygons ( const lanelet::Polygons3d  polygons,
const char  subtype[] 
)

◆ toBinaryMsg()

void autoware::common::had_map_utils::toBinaryMsg ( const std::shared_ptr< lanelet::LaneletMap > &  map,
autoware_auto_msgs::msg::HADMapBin &  msg 
)

◆ toGeomMsgPt()

geometry_msgs::msg::Point autoware::common::had_map_utils::toGeomMsgPt ( const geometry_msgs::msg::Point32 &  src)

◆ toGeomMsgPt32()

geometry_msgs::msg::Point32 autoware::common::had_map_utils::toGeomMsgPt32 ( const lanelet::BasicPoint3d &  src)