Проверка карты стоимости транспортного средства на наличие безударных поз или точек
checkFree функция проверяет, свободны ли позы или точки транспортного средства от препятствий на карте расходов транспортного средства. Использование алгоритмов планирования путей checkFree для проверки того, являются ли позиции транспортного средства-кандидата вдоль пути судоходными.
Для упрощения проверки на столкновение для позы транспортного средства, vehicleCostmap раздувает препятствия в соответствии с InflationRadius, как указано в CollisionChecker свойство карты затрат. Устройство контроля соударения вычисляет радиус надувания, заключая транспортное средство в набор перекрывающихся окружностей радиусом R, где центры этих окружностей лежат вдоль продольной оси транспортного средства. Радиус накачки - это минимальный R, необходимый для полного охвата транспортного средства в этих кругах.
Поза транспортного средства свободна от столкновения при соблюдении следующих условий:
Ни один из центров круга транспортного средства не лежит на накачанной сетке.
Стоимость каждого элемента, содержащего центр круга, меньше значения FreeThreshold карты расходов.
Для получения дополнительной информации см. алгоритм на vehicleCostmap справочная страница.
проверяет, свободны ли позы транспортного средства от столкновения с препятствиями на карте расходов.free = checkFree(costmap,vehiclePoses)
Если указано небольшое значение InflationRadius который не полностью охватывает транспортное средство, то checkFree может сообщать о занятых представлениях как свободных от столкновений. Во избежание этой ситуации значение по умолчанию: InflationRadius полностью закрывает транспортное средство.