| | |
| | | package safeluck.drive.evaluation.routecollect.impl; |
| | | |
| | | import android.util.Log; |
| | | |
| | | import com.anyun.exam.lib.IRemoteInterface; |
| | | |
| | | import org.json.JSONException; |
| | | import org.json.JSONObject; |
| | | |
| | | import safeluck.drive.evaluation.Constant; |
| | | import safeluck.drive.evaluation.cEventCenter.CEventCenter; |
| | | import safeluck.drive.evaluation.cEventCenter.ICEventListener; |
| | | import safeluck.drive.evaluation.routecollect.CollectPointResult; |
| | | import safeluck.drive.evaluation.routecollect.ILoadListener; |
| | | import safeluck.drive.evaluation.routecollect.IRouteCollectInterface; |
| | | import safeluck.drive.evaluation.routecollect.IRouteRemotePointCallback; |
| | | import safeluck.drive.evaluation.util.Utils; |
| | | |
| | | /** |
| | | * DriveJudge |
| | |
| | | * 邮箱:632393724@qq.com |
| | | * All Rights Saved! Chongqing AnYun Tech co. LTD |
| | | */ |
| | | public class RouteModel implements IRouteCollectInterface,IRouteRemotePointCallback { |
| | | public class RouteModel implements IRouteCollectInterface{ |
| | | |
| | | ILoadListener iLoadListener; |
| | | private double sx=120.0,sy=10.03; |
| | | private static final String TAG = "RouteModel"; |
| | | private ICEventListener icEventListener= new ICEventListener() { |
| | | @Override |
| | | public void onCEvent(String topic, int msgCode, int resultCode, Object obj) { |
| | | //,"coord_x":0.974,"coord_x_dir":"N","coord_y":-0.191,"c |
| | | if (iLoadListener != null){ |
| | | CollectPointResult collectPointResult = new CollectPointResult(); |
| | | try { |
| | | JSONObject jsonObject = new JSONObject((String)obj); |
| | | double x = jsonObject.getDouble("coord_x"); |
| | | double y = jsonObject.getDouble("coord_y"); |
| | | |
| | | Log.i(TAG,String.format("采集到的点【x=%f,y=%f]",x,y)); |
| | | collectPointResult.setX(Utils.getdouble(x,4)); |
| | | collectPointResult.setY(Utils.getdouble(y,4)); |
| | | iLoadListener.finishCollectItem(collectPointResult); |
| | | } catch (JSONException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | } |
| | | } |
| | | }; |
| | | |
| | | @Override |
| | | public void startCollect(ILoadListener listener) { |
| | | iLoadListener = listener; |
| | |
| | | //set IRouteRemotePointCallback |
| | | |
| | | //如果采用application的callback ,可能需要注册一个CEventLisntener |
| | | CEventCenter.onBindEvent(true,icEventListener, Constant.BIND_RTK_INFO_MAP); |
| | | } |
| | | |
| | | /** |
| | |
| | | @Override |
| | | public void endCollect() { |
| | | //如果采用application的callback ,可能需要反注册一个CEventLisntener 解绑 |
| | | CEventCenter.onBindEvent(false,icEventListener,Constant.BIND_RTK_INFO_MAP); |
| | | iLoadListener = null; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void javaPoint(int qf, double x, double y, double z, double heading, double pitch, double roll) { |
| | | |
| | | if (iLoadListener != null){ |
| | | CollectPointResult collectPointResult = new CollectPointResult(); |
| | | collectPointResult.setX(sx); |
| | | collectPointResult.setY(sy); |
| | | iLoadListener.finishCollectItem(collectPointResult); |
| | | } |
| | | } |
| | | } |