| | |
| | | static bool slideNormalDistance = false; |
| | | static bool reportSlideFault = false; |
| | | static bool reportStartTimeout = false; |
| | | |
| | | static bool handBreakActive = false; |
| | | static bool CrashRedLine(const Polygon *map, const car_model *car); |
| | | static double DistanceOfHead2Stopline(const Polygon *map, const car_model *car); |
| | | static double DistanceOfTire2Edge(const Polygon *map, const car_model *car); |
| | |
| | | slideNormalDistance = false; |
| | | reportSlideFault = false; |
| | | reportStartTimeout = false; |
| | | handBreakActive = false; |
| | | |
| | | MA_EnterMap(mapIndex, MAP_TYPE_STOP_START, 1); |
| | | } |
| | |
| | | if (prevMoveDirect != moveDirect) { |
| | | if (moveDirect == 0) { |
| | | stopTimepoint = TimeMakeComposite(rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss*10); |
| | | } else if (stopCar && !handBreakActive) { |
| | | // 检查是否拉住手刹 |
| | | handBreakActive = true; |
| | | AddExamFault(19, rtkTime); |
| | | DEBUG("没拉手刹"); |
| | | } |
| | | prevMoveDirect = moveDirect; |
| | | } else if (moveDirect == 0) { |
| | |
| | | AddExamFault(18, rtkTime); |
| | | DEBUG("距离边线超出30厘米"); |
| | | } |
| | | } |
| | | |
| | | // 检查是否拉住手刹 |
| | | if (ReadCarStatus(HAND_BREAK) != BREAK_ACTIVE) { |
| | | AddExamFault(19, rtkTime); |
| | | DEBUG("没拉手刹"); |
| | | } |
| | | if (stopCar && !handBreakActive && ReadCarStatus(HAND_BREAK) == BREAK_ACTIVE) { |
| | | handBreakActive = true; |
| | | } |
| | | } |
| | | |