监听adas返回全局路径,配置高德路径规划参数
This commit is contained in:
@@ -81,6 +81,7 @@ import mogo.telematics.pad.MessagePad;
|
||||
/**
|
||||
* 小地图的方向View
|
||||
* 监听自动驾驶路径结束,结束高德地图导航
|
||||
*
|
||||
* @author donghongyu
|
||||
* @date 12/14/20 4:40 PM
|
||||
*/
|
||||
@@ -722,11 +723,38 @@ public class SmallMapDirectionView
|
||||
|
||||
}
|
||||
|
||||
//自动驾驶状态开启之后返回,真实路径需要确认返回时间
|
||||
//数据返回之后触发路算
|
||||
/**
|
||||
* 根据全路径获取起始点和经停点进行导航路线绘制
|
||||
* 自动驾驶启动后获得数据,获取全路径的具体时间要进行路测
|
||||
* 室内某个bag包自动驾驶启动8s后返回
|
||||
*/
|
||||
@Override
|
||||
public void onAutopilotRotting(@org.jetbrains.annotations.Nullable MessagePad.GlobalPathResp globalPathResp) {
|
||||
List list = globalPathResp.getWayPointsList();
|
||||
Log.d(TAG, "adas返回全路径:" + list.toString());
|
||||
int minCount = 2;
|
||||
if (list.size() >= minCount) {
|
||||
Location sLocation = (Location) list.get(0);
|
||||
Location eLocation = (Location) list.get(list.size() - 1);
|
||||
mStartLatlng = new NaviLatLng(sLocation.getLongitude(), sLocation.getLatitude());
|
||||
mEndLatlng = new NaviLatLng(eLocation.getLongitude(), eLocation.getLatitude());
|
||||
sList.add(mStartLatlng);
|
||||
eList.add(mEndLatlng);
|
||||
for (int i = 1; i < list.size() - minCount; i++) {
|
||||
Location wayLoc = (Location) list.get(i);
|
||||
NaviLatLng way = new NaviLatLng(wayLoc.getLongitude(), wayLoc.getLatitude());
|
||||
mWayPointList.add(way);
|
||||
}
|
||||
}
|
||||
int strategy = 0;
|
||||
try {
|
||||
//再次强调,最后一个参数为true时代表多路径,否则代表单路径
|
||||
strategy = mAMapNavi.strategyConvert(true, false, false, false, false);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
Log.d(TAG, "calculateDriveRoute:" + sList.toString() + "," + eList.toString() + "," + mWayPointList.toString());
|
||||
//指定路径绘制导航路线
|
||||
mAMapNavi.calculateDriveRoute(sList, eList, mWayPointList, strategy);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user