| | |
| | | // 距离停止线前后超出50厘米 |
| | | AddExamFault(12, rtkTime); |
| | | DEBUG("距离停止线前后超出50厘米,不合格"); |
| | | status = -1; |
| | | } else if (fabs(dis1) > EPSILON) { |
| | | // 前保险没有位于停止带内,但没有超出50厘米,扣10分 |
| | | AddExamFault(17, rtkTime); |
| | |
| | | // 距离边线超出50厘米,不合格 |
| | | AddExamFault(14, rtkTime); |
| | | DEBUG("距离边线超出50厘米"); |
| | | status = -1; |
| | | } else if (dis2 > EDGE_DISTANCE_THRESHOLD_YELLOW) { |
| | | // 距离边线超出30厘米,不合格 |
| | | AddExamFault(18, rtkTime); |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | return status; |
| | | } |
| | | |
| | | // 车轮是否压边线 |
| | |
| | | // 整个车辆都要驶离该测试区域 |
| | | static bool ExitTestArea(const Polygon *map, const car_model *car) |
| | | { |
| | | // 在8->7线的右侧 |
| | | for (int i = 0; i < car->bodyNum; ++i) { |
| | | if (IntersectionOfLine(map->point[8], map->point[7], car->carXY[car->body[i]]) != -1) |
| | | return false; |