From 00c07fb94c6927f3bb8ebfec383a33936f04447b Mon Sep 17 00:00:00 2001
From: yy1717 <fctom1215@outlook.com>
Date: 星期五, 22 五月 2020 19:01:18 +0800
Subject: [PATCH] 坐标

---
 lib/src/main/cpp/driver_test.h |   65 ++++++++++----------------------
 1 files changed, 21 insertions(+), 44 deletions(-)

diff --git a/lib/src/main/cpp/driver_test.h b/lib/src/main/cpp/driver_test.h
index 81d7b1d..769a78d 100644
--- a/lib/src/main/cpp/driver_test.h
+++ b/lib/src/main/cpp/driver_test.h
@@ -92,41 +92,6 @@
     int wrong_id;
 };
 
-
-struct trigger_line_tx {
-    int triggerMapId;
-    Polygon line;
-};
-
-
-struct road_exam_mapx {
-    int id;
-    int type;
-
-    string tts;
-
-    int redLineNum;
-    Polygon *redLine;
-
-    int greenLineNum;
-    Polygon *greenLine;
-
-    int redAreaNum;
-    Polygon *redArea;
-
-    int triggerLineNum;
-    trigger_line_tx *triggerLine;
-
-    int roadEdgeLineNum;    // 閬撹矾杈圭嚎锛屽彧鏈夌洿绾块┚椹躲�侀潬杈瑰仠杞︽墠鏈�
-    Polygon *roadEdgeLine;
-
-    Polygon area;           // 瀛愰」鐩殑鍖哄煙
-    Line stopLine;         // 璇稿浜鸿閬撱�佽矾鍙g瓑鑰冪偣鐨勫仠姝㈢嚎
-    int flagStop;           // 鍒拌揪寮�濮嬬嚎鍓嶏紝鏄惁闇�瑕佸仠杞�
-};
-
-typedef vector<struct road_exam_mapx> LIST_ROAD_MAP;
-
 #define LINE_DOTTED            0
 #define LINE_SOLID             1
 #define LINE_HALF_SOLID_LEFT        2
@@ -142,6 +107,20 @@
 #define SCHOOL_AREA                 1
 #define BUS_STATION_AREA            2
 #define GRID_AREA                   3
+
+#define ROAD_ITEM_NONE              0
+#define ROAD_ITEM_CHANGE_LANE       1
+#define ROAD_ITEM_OVERTAKE          2
+#define ROAD_ITEM_STRAIGHT          3
+#define ROAD_ITEM_OPERATE_GEAR      4
+#define ROAD_ITEM_START_CAR         5
+
+enum {
+    ROAD_ACTIVE_FORWARD,
+    ROAD_ACTIVE_TURN_LEFT,
+    ROAD_ACTIVE_TURN_RIGHT,
+    ROAD_ACTIVE_TURN_BACKWARD
+};
 
 typedef struct {
     int character;                  // 灞炴�э紙瀹炵嚎銆佽櫄绾匡紝鏈変簺鍙互鎺夊ご鐨勮矾娈碉級
@@ -165,6 +144,9 @@
     Line startLine;
     Line stopLine;
     int active;         // 鍒拌揪璺彛灏鹃儴鐨勮杩涙柟鍚�
+    bool activeBreak;   // 璺彛鍒硅溅鍑忛��
+    bool activeStop;    // 璺彛鍋滆溅鐬湜
+    bool errorLane;     // 閿欒杞﹂亾
     int targetRoad;
     int stopFlag;
     string tts;
@@ -179,6 +161,8 @@
     int id;
     int road;
     int type;
+    bool activeBreak;
+    bool overSpeed;
     std::vector<PointF> area;       // 浜鸿閬撶瓑鍙充晶2鐐癸紝缃戞牸绾�4鐐�
     std::vector<PointF> leftPoints; // 瀵瑰簲鍒伴亾璺乏渚х殑鐐�
 } special_area_t;
@@ -190,7 +174,8 @@
     int time;                   // 椤圭洰鏈�澶у畬鎴愭椂闂�
     int distance;               // 椤圭洰鏈�澶у畬鎴愯窛绂�
     string tts;
-    Line line;
+    std::vector<PointF> points;
+    std::vector<PointF> leftPoints; // 瀵瑰簲鍒伴亾璺乏渚х殑鐐�
 } trigger_line_t;
 
 struct road_exam_map {
@@ -210,8 +195,6 @@
 
 typedef list<car_model *> LIST_CAR_MODEL;
 
-//vector<ExamFault> ExamFaultList;
-
 void DriverTestInit(void);
 void ReadDriverExamPrimer(void);
 
@@ -221,12 +204,6 @@
 
 void CleanRoadMap(void);
 void SetRoadMap(road_exam_map &map);
-
-void SetRoadMapPoints(vector<double> &mapPoints);
-void AddRoadMapParent(int id, int type, string tts, int stopFlag, vector<vector<int>> &redLines,
-                      vector<vector<int>> &redAreas, vector<vector<int>> &greenLines,
-                      vector<vector<int>> &triggerLines, vector<vector<int>> &roadEdgeLines,
-                      vector<int> area, vector<int> stopLine);
 
 void SetCarMeasurePoint(double *basePoint, int *axial, int *left_front_tire,
                         int *right_front_tire, int *left_rear_tire, int *right_rear_tire,

--
Gitblit v1.8.0