diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index b892d6479b..cfc605c98e 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -84,6 +84,7 @@
+
diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/marker/SimpleWindow3DAdapter.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/marker/SimpleWindow3DAdapter.java
new file mode 100644
index 0000000000..3239565218
--- /dev/null
+++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/marker/SimpleWindow3DAdapter.java
@@ -0,0 +1,23 @@
+package com.mogo.module.common.drawer.marker;
+
+import android.view.View;
+
+import com.mogo.map.marker.IMogoInfoWindowAdapter;
+import com.mogo.map.marker.IMogoMarker;
+
+/**
+ * 简单marker适配器
+ *
+ * @author tongchenfei
+ */
+public class SimpleWindow3DAdapter implements IMogoInfoWindowAdapter {
+
+ public View icon;
+ public SimpleWindow3DAdapter(View icon) {
+ this.icon = icon;
+ }
+ @Override
+ public View getInfoWindow(IMogoMarker marker) {
+ return icon;
+ }
+}
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/location/MogoRTKLocation.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/location/MogoRTKLocation.java
index 445672c2f8..b818a982d6 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/location/MogoRTKLocation.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/location/MogoRTKLocation.java
@@ -48,10 +48,13 @@ public class MogoRTKLocation {
if (msg.what == MSG_DATA_CHANGED) {
mHandler.sendEmptyMessageDelayed(MSG_DATA_CHANGED, uploadDelay);
sendLocationData();
+
+ Logger.d(TAG,"handleMessage开始发送消息");
}
}
};
mHandler.sendEmptyMessage(MSG_DATA_CHANGED);
+ Logger.d(TAG,"构造方法开始发送消息");
}
public interface RTKLocationListener {
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/OptimalSpeedMarker.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/OptimalSpeedMarker.java
index d5268ab6c6..8f98c94d3b 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/OptimalSpeedMarker.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/OptimalSpeedMarker.java
@@ -3,6 +3,9 @@ package com.mogo.module.v2x.scenario.scene.obu;
import com.mogo.map.MogoLatLng;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.MogoMarkerOptions;
+import com.mogo.module.common.drawer.MarkerDrawer;
+import com.mogo.module.common.drawer.marker.EmptyMarkerView;
+import com.mogo.module.common.drawer.marker.SimpleWindow3DAdapter;
import com.mogo.module.v2x.V2XServiceManager;
import com.mogo.module.v2x.marker.OptimalSpeedMarkerView;
import com.mogo.module.v2x.scenario.view.IV2XMarker;
@@ -22,10 +25,23 @@ class OptimalSpeedMarker implements IV2XMarker {
@Override
public void drawPOI(MogoLatLng entity) {
Logger.d(MODULE_NAME, "绘制绿波marker===" + entity);
+
MogoMarkerOptions optionsRipple = new MogoMarkerOptions()
.latitude(entity.getLat())
- .longitude(entity.getLon()).anchor(0.5f,0.9f).icon( ViewUtils.fromView(new OptimalSpeedMarkerView(V2XServiceManager.getContext())));
- optimalMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_OPTIMAL_SPEED_MARKER, optionsRipple);
+ .longitude(entity.getLon())
+ .anchor(0.5f, 0.9f)
+ .zIndex(MarkerDrawer.MARKER_Z_INDEX_HIGH);
+ if (V2XServiceManager.getMoGoStatusManager().isVrMode()) {
+ optionsRipple
+ .icon(ViewUtils.fromView(new EmptyMarkerView(V2XServiceManager.getContext())));
+ optimalMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_OPTIMAL_SPEED_MARKER, optionsRipple);
+ optimalMarker.setInfoWindowAdapter(new SimpleWindow3DAdapter(new OptimalSpeedMarkerView(V2XServiceManager.getContext())));
+ optimalMarker.showInfoWindow();
+ } else {
+ optionsRipple
+ .icon(ViewUtils.fromView(new OptimalSpeedMarkerView(V2XServiceManager.getContext())));
+ optimalMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_OPTIMAL_SPEED_MARKER, optionsRipple);
+ }
if (optimalMarker != null) {
optimalMarker.setClickable(false);
}
@@ -33,7 +49,7 @@ class OptimalSpeedMarker implements IV2XMarker {
@Override
public void clearPOI() {
- Logger.d(MODULE_NAME,"准备清除绿波marker");
+ Logger.d(MODULE_NAME, "准备清除绿波marker");
if (optimalMarker != null) {
Logger.d(MODULE_NAME, "清除绿波marker===" + optimalMarker);
optimalMarker.remove();