eagle 工控机提供车前引导线数据

This commit is contained in:
lianglihui
2021-10-22 19:39:45 +08:00
parent 18dc7918fd
commit 5742f2ad93
11 changed files with 306 additions and 12 deletions

View File

@@ -5,6 +5,7 @@ import android.content.Context;
import android.content.Intent;
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.text.TextUtils;
import android.util.Log;
@@ -26,10 +27,12 @@ import com.mogo.service.adas.IMogoAdasDataCallback;
import com.mogo.service.adas.IMogoAdasOCHCallback;
import com.mogo.service.adas.IMogoAdasRecognizedDataCallback;
import com.mogo.service.adas.IMogoAdasRouteCallBack;
import com.mogo.service.adas.IMogoAdasTrajectoryDataCallBack;
import com.mogo.service.adas.IMogoAdasWarnMessageCallback;
import com.mogo.eagle.core.data.autopilot.RemoteControlAutoPilotParameters;
import com.mogo.service.adas.entity.ADASCarStateInfo;
import com.mogo.service.adas.entity.ADASRecognizedResult;
import com.mogo.service.adas.entity.ADASTrajectoryInfo;
import com.mogo.service.adas.entity.ADASWarnMessage;
import com.mogo.eagle.core.data.autopilot.AdasOCHData;
import com.mogo.service.adas.entity.CarModelListResponse;
@@ -53,6 +56,7 @@ import com.zhidao.autopilotservice.model.AdasAIDLOwnerCarRectModel;
import com.zhidao.support.adas.high.bean.AutopilotRoute;
import com.zhidao.support.adas.high.bean.AutopilotStatus;
import com.zhidao.support.adas.high.bean.RectInfo;
import com.zhidao.support.adas.high.bean.TrajectoryInfo;
import com.zhidao.support.adas.high.bean.WarnMessageInfo;
import org.json.JSONObject;
@@ -107,6 +111,11 @@ public class MogoADASController implements IMogoADASController {
*/
private final List<IMogoAdasRouteCallBack> mMogoAdasRouteCallBacks = new CopyOnWriteArrayList<>();
/**
* 车前引导线回调
*/
private final List<IMogoAdasTrajectoryDataCallBack> mMogoAdasTrajectoryDataCallBacks = new CopyOnWriteArrayList<>();
private IAdasDataListener mAdasDataListener;
private IMogoAdasCarDataCallback mMogoAdasCarDataCallback;
@@ -309,6 +318,7 @@ public class MogoADASController implements IMogoADASController {
});
}
@Override
public void selectCarModelUrl(String carStyleUrl) {
Logger.d(TAG, "selectCarModelUrl: " + carStyleUrl);
@@ -367,6 +377,36 @@ public class MogoADASController implements IMogoADASController {
}
}
@Override
public void onAutopilotTrajectory(List<TrajectoryInfo> trajectorys) {
if(trajectorys != null && trajectorys.size() > 0){
List<ADASTrajectoryInfo> trajectoryInfoArrayList = new ArrayList<>();
TrajectoryInfo t= trajectorys.get(0);
Log.e("lianglihui","trajectorys:"+ t.getLat()+"-"+t.getLon()+"-"+System.currentTimeMillis());
for (TrajectoryInfo trajectory : trajectorys){
ADASTrajectoryInfo adasTrajectoryInfo = new ADASTrajectoryInfo();
adasTrajectoryInfo.setLat(trajectory.getLat());
adasTrajectoryInfo.setLon(trajectory.getLon());
adasTrajectoryInfo.setAcceleration(trajectory.getAcceleration());
adasTrajectoryInfo.setAccumulatedDis(trajectory.getAccumulatedDis());
adasTrajectoryInfo.setTime(trajectory.getTime());
adasTrajectoryInfo.setVelocity(trajectory.getVelocity());
adasTrajectoryInfo.setAlt(trajectory.getAlt());
adasTrajectoryInfo.setKappa(trajectory.getKappa());
adasTrajectoryInfo.setTheta(trajectory.getTheta());
trajectoryInfoArrayList.add(adasTrajectoryInfo);
}
for (IMogoAdasTrajectoryDataCallBack callBack: mMogoAdasTrajectoryDataCallBacks){
if (callBack != null){
callBack.onAutopilotTrajectory(trajectoryInfoArrayList);
}
}
}
}
@Override
public void autopilotRoute(AutopilotRoute autopilotRoute) {
if (autopilotRoute.getModels() == null || autopilotRoute.getModels().size() == 0) {
@@ -770,6 +810,22 @@ public class MogoADASController implements IMogoADASController {
}
}
@Override
public void addAdasTrajectoryDataCallBack(IMogoAdasTrajectoryDataCallBack callBack) {
if (callBack == null) {
return;
}
if (!mMogoAdasTrajectoryDataCallBacks.contains(callBack)) {
mMogoAdasTrajectoryDataCallBacks.add(callBack);
}
}
@Override
public void removeAdasTrajectoryDataCallBack(IMogoAdasTrajectoryDataCallBack callBack) {
if (callBack != null){
mMogoAdasTrajectoryDataCallBacks.remove(callBack);
}
}
}