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/master/comm_if.cpp | 49 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 45 insertions(+), 4 deletions(-) diff --git a/lib/src/main/cpp/master/comm_if.cpp b/lib/src/main/cpp/master/comm_if.cpp index c99a0d4..5ff520f 100644 --- a/lib/src/main/cpp/master/comm_if.cpp +++ b/lib/src/main/cpp/master/comm_if.cpp @@ -594,7 +594,6 @@ mapPoints.push_back((*itr2).GetDouble()); } - SetRoadMapPoints(mapPoints); } if (doc.HasMember("maps")) { @@ -737,7 +736,6 @@ tts = s.GetString(); } - AddRoadMapParent(id, type, tts, stop_flag, redLines, redAreas, greenLines, triggerLines, roadEdgeLines, area, stopLine); } } } @@ -959,8 +957,6 @@ if (doc.HasMember("special_area")) { const Value &a = doc["special_area"]; - vector<special_area_t> specialAreas; - for (Value::ConstValueIterator itr = a.Begin(); itr != a.End(); ++itr) { special_area_t specialArea; @@ -991,7 +987,52 @@ } } if (doc.HasMember("trigger_line")) { + const Value &a = doc["trigger_line"]; + for (Value::ConstValueIterator itr = a.Begin(); + itr != a.End(); ++itr) { + trigger_line_t trigger; + + if (itr->HasMember("type")) { + const Value &s = (*itr)["type"]; + trigger.active = s.GetInt(); + } + if (itr->HasMember("id")) { + const Value &s = (*itr)["id"]; + trigger.id = s.GetInt(); + } + if (itr->HasMember("road")) { + const Value &s = (*itr)["road"]; + trigger.road = s.GetInt(); + } + if (itr->HasMember("tts")) { + const Value &s = (*itr)["tts"]; + trigger.tts = s.GetString(); + } + if (itr->HasMember("time")) { + const Value &s = (*itr)["time"]; + trigger.time = s.GetInt(); + } else { + trigger.time = 0; + } + if (itr->HasMember("distance")) { + const Value &s = (*itr)["distance"]; + trigger.distance = s.GetInt(); + } else { + trigger.distance = 0; + } + + if (itr->HasMember("line")) { + const Value &a2 = (*itr)["line"]; + + for (Value::ConstValueIterator itr2 = a2.Begin(); + itr2 != a2.End(); ++itr2) { + trigger.points.push_back(mapPoints[(*itr2).GetInt()]); + } + } + + map.triggerLines.push_back(trigger); + } } DEBUG("鍦板浘瑙f瀽瀹屾瘯"); -- Gitblit v1.8.0