From c484cbb09d445e2ab30ea011c6d2ffd87202bb26 Mon Sep 17 00:00:00 2001
From: yy1717 <fctom1215@outlook.com>
Date: 星期五, 23 十月 2020 18:05:34 +0800
Subject: [PATCH] 添加可用户配置的评判参数。
---
lib/src/main/cpp/test_items/stop_and_start.cpp | 21 ++++++++-------------
1 files changed, 8 insertions(+), 13 deletions(-)
diff --git a/lib/src/main/cpp/test_items/stop_and_start.cpp b/lib/src/main/cpp/test_items/stop_and_start.cpp
index d75ed70..477884b 100644
--- a/lib/src/main/cpp/test_items/stop_and_start.cpp
+++ b/lib/src/main/cpp/test_items/stop_and_start.cpp
@@ -19,12 +19,7 @@
using namespace std;
-const double STOP_DISTANCE_THRESHOLD_RED = 0.5;
-const double EDGE_DISTANCE_THRESHOLD_RED = 0.5;
-const double EDGE_DISTANCE_THRESHOLD_YELLOW = 0.3;
-const double SLIDE_DISTANCE_THRESHOLD_RED = 0.3;
-const double SLIDE_DISTANCE_THRESHOLD_YELLOW = 0.1;
-const uint32_t CAR_START_TIMEOUT = D_SEC(30);
+
const uint32_t STOP_CAR_TIME = D_SEC(1);
const double EPSILON = 1e-3;
@@ -126,7 +121,7 @@
DEBUG("DIS1 = %f DIS2 = %f", dis1, dis2);
- if (dis1 > STOP_DISTANCE_THRESHOLD_RED) {
+ if (dis1 > examParam.ramp_stoppoint_red_distance) {
// 璺濈鍋滄绾垮墠鍚庤秴鍑�50鍘樼背
AddExamFault(12, rtkTime);
DEBUG("璺濈鍋滄绾垮墠鍚庤秴鍑�50鍘樼背锛屼笉鍚堟牸");
@@ -136,12 +131,12 @@
DEBUG("鍓嶄繚闄╂病鏈変綅浜庡仠姝㈠甫鍐咃紝浣嗘病鏈夎秴鍑�50鍘樼背");
}
- if (dis2 > EDGE_DISTANCE_THRESHOLD_RED) {
+ if (dis2 > examParam.ramp_edge_red_distance) {
// 璺濈杈圭嚎瓒呭嚭50鍘樼背,涓嶅悎鏍�
AddExamFault(14, rtkTime);
DEBUG("璺濈杈圭嚎瓒呭嚭50鍘樼背");
- } else if (dis2 > EDGE_DISTANCE_THRESHOLD_YELLOW) {
- // 璺濈杈圭嚎瓒呭嚭30鍘樼背锛屼笉鍚堟牸
+ } else if (dis2 > examParam.ramp_edge_yellow_distance) {
+ // 璺濈杈圭嚎瓒呭嚭30鍘樼背锛屾墸10鍒�
AddExamFault(18, rtkTime);
DEBUG("璺濈杈圭嚎瓒呭嚭30鍘樼背");
}
@@ -158,11 +153,11 @@
// 鍙戠敓鍚庢粦
double slideDistance = DistanceOf(stopPoint, car->carXY[car->axial[AXIAL_FRONT]]);
- if (slideDistance > SLIDE_DISTANCE_THRESHOLD_YELLOW) {
+ if (slideDistance > examParam.ramp_slide_yellow_distance) {
slideNormalDistance = true;
}
- if (slideDistance > SLIDE_DISTANCE_THRESHOLD_RED && !slideLongDistance && !reportSlideFault) {
+ if (slideDistance > examParam.ramp_slide_red_distance && !slideLongDistance && !reportSlideFault) {
// 鍚庢粦瓒呰繃30鍘樼背, 涓嶅悎鏍�
AddExamFault(16, rtkTime);
DEBUG("鍚庢粦瓒呰繃30鍘樼背");
@@ -174,7 +169,7 @@
if (!reportStartTimeout && (IntersectionOfLine(map->point[4], stopPoint, car->carXY[car->axial[AXIAL_FRONT]]) != -1 ||
DistanceOf(stopPoint, car->carXY[car->axial[AXIAL_FRONT]]) < 0.1)) {
- if (TimeMakeComposite(rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss*10) - stopCarTime > CAR_START_TIMEOUT) {
+ if (TimeMakeComposite(rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss*10) - stopCarTime > examParam.ramp_start_car_limit_time) {
// 璧锋鏃堕棿瓒呰繃30绉掞紝涓嶅悎鏍�
AddExamFault(15, rtkTime);
DEBUG("璧锋鏃堕棿瓒呰繃30绉�");
--
Gitblit v1.8.0