From 61f6ff3a95dbd486518e69d9d69c5280ada4ac54 Mon Sep 17 00:00:00 2001 From: liujing Date: Fri, 25 Dec 2020 11:24:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B8=A7=E5=8A=A8=E7=94=BB=E6=94=AF=E6=8C=81[?= =?UTF-8?q?=E6=96=B9=E6=B3=95=E4=BC=A0=E5=8F=82=E8=A2=AB=E6=B3=A8,showinwi?= =?UTF-8?q?ndow=E6=96=B9=E6=B3=95=E6=9B=BF=E6=8D=A2]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../map/impl/custom/utils/ObjectUtils.java | 4 ++-- .../manager/impl/MoGoV2XMarkerManager.java | 20 ++++++++++--------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/utils/ObjectUtils.java b/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/utils/ObjectUtils.java index 2639322021..29574c7749 100644 --- a/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/utils/ObjectUtils.java +++ b/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/utils/ObjectUtils.java @@ -72,8 +72,8 @@ public class ObjectUtils { MarkerOptions markerOptions = new MarkerOptions() .position(new LonLatPoint(opt.getLongitude(), opt.getLatitude())) .anchor(opt.getU(), opt.getV()) -// .icons( descriptors ) -// .period( opt.getPeriod() ) + .icons( descriptors ) + .period( opt.getPeriod() ) .rotateAngle(opt.getRotate()) .setFlat(opt.isFlat()) .visible(opt.isVisible()) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XMarkerManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XMarkerManager.java index ddba430565..6bcd120cee 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XMarkerManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XMarkerManager.java @@ -60,6 +60,7 @@ public class MoGoV2XMarkerManager implements IMoGoV2XMarkerManager { private static CopyOnWriteArraySet mV2XRoadEventEntityArrayList = new CopyOnWriteArraySet<>(); // 上次的道路事件的预警Marker private static IMogoMarker mAlarmInfoMarker; + @Override public void drawableLastAllPOI() { //Logger.w(MODULE_NAME, "V2X---绘制上一次的POI,回调给Launcher底层逻辑让其进行绘制"); @@ -257,19 +258,20 @@ public class MoGoV2XMarkerManager implements IMoGoV2XMarkerManager { .longitude(roadEventEntity.getLocation().getLon()); optionsRipple.anchor(0.5f, 0.5f); - // 由于性能问题,D车机不使用事件扩散动画 + //由于性能问题,D车机不使用事件扩散动画 + //showInfoWindow只支持添加单个marker,不支持帧动画 if (!CarSeries.isF8xxSeries()) { optionsRipple.icon(V2XMarkerAdapter.getV2XRoadEventViewPng(context, roadEventEntity)); + if (V2XServiceManager.getMoGoStatusManager().isVrMode()) { + mAlarmInfoMarker = MarkerDrawer.getInstance().drawMapMarkerImpl(markerShowEntity, MarkerDrawer.MARKER_Z_INDEX_HIGH, null); + mAlarmInfoMarker.setInfoWindowAdapter(new RoadConditionInfoWindow3DAdapter(markerShowEntity, AbsMogoApplication.getApp(), mAlarmInfoMarker.getMogoMarkerOptions())); + mAlarmInfoMarker.showInfoWindow(); + } else { + mAlarmInfoMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_EVENT_ALARM_POI, optionsRipple); + } } else { optionsRipple.icons(V2XMarkerAdapter.getV2XRoadEventViewGif(context, roadEventEntity)); - optionsRipple.period(1); - } - if (V2XServiceManager.getMoGoStatusManager().isVrMode()) { - mAlarmInfoMarker = MarkerDrawer.getInstance().drawMapMarkerImpl(markerShowEntity, MarkerDrawer.MARKER_Z_INDEX_HIGH, null); - mAlarmInfoMarker.setInfoWindowAdapter(new RoadConditionInfoWindow3DAdapter(markerShowEntity, AbsMogoApplication.getApp(), mAlarmInfoMarker.getMogoMarkerOptions())); - mAlarmInfoMarker.showInfoWindow(); - } else{ -// optionsRipple.icon(V2XMarkerAdapter.getV2XRoadEventViewPng(context, roadEventEntity)); + optionsRipple.period(100); mAlarmInfoMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_EVENT_ALARM_POI, optionsRipple); } // 当前Marker设置为最上面