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