From 81e4bea8eaf9123571d201ef761c2d7e9f121433 Mon Sep 17 00:00:00 2001 From: renwj Date: Mon, 1 Jul 2024 12:06:19 +0800 Subject: [PATCH 1/6] =?UTF-8?q?[6.5.0][=E8=A7=86=E8=A7=92=E5=88=87?= =?UTF-8?q?=E6=8D=A2]=20=E6=B7=BB=E5=8A=A0=E8=8E=B7=E5=8F=96=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E8=A7=86=E8=A7=92=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt | 5 ++--- .../scene/road/V2XRoadEventScenario.java | 7 ++---- .../datacenter/obu/MogoObuDcCombineManager.kt | 4 ++-- .../obu/MogoPrivateObuNewManager.kt | 5 ++--- .../angle/MoGoVisualAngleChangeProvider.kt | 22 +++++++++++++++---- .../core/function/angle/scenes/CrossRoad.kt | 2 +- .../core/function/angle/scenes/Default.kt | 2 +- .../core/function/angle/scenes/LongSight.kt | 2 +- .../core/function/angle/scenes/RoadEvent.kt | 4 ++-- .../angle/IMoGoVisualAngleChangeProvider.kt | 4 +++- .../call/map/CallerVisualAngleManager.kt | 8 +++++-- 11 files changed, 40 insertions(+), 25 deletions(-) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt index a2faa7096c..4b2d3d6dbd 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt @@ -44,7 +44,6 @@ import mogo.telematics.pad.MessagePad.TrackedObject import mogo.v2x.MogoV2X import mogo.v2x.MogoV2X.RSI_PB import mogo.v2x.MogoV2X.RTEData_PB -import java.lang.Math.abs import java.util.concurrent.TimeUnit.SECONDS /** @@ -296,13 +295,13 @@ internal object V2NIdentifyDrawer { override fun onShow() { super.onShow() runCatching { CallerHmiManager.notifyXiaoZhiStatusChanged(V2N(EventTypeEnumNew.getEnumType(poiType)), State.START) } - CallerVisualAngleManager.changeAngle(RoadEvent(2, SECONDS)) + CallerVisualAngleManager.changeScene(RoadEvent(2, SECONDS)) } override fun onDismiss() { super.onDismiss() runCatching { CallerHmiManager.notifyXiaoZhiStatusChanged(V2N(EventTypeEnumNew.getEnumType(poiType)), State.STOP) } - CallerVisualAngleManager.changeAngle(Default()) + CallerVisualAngleManager.changeScene(Default()) } }, ALERT_WARNING_TOP, diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java index 3b91f91e88..0c306bafca 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XRoadEventScenario.java @@ -1,8 +1,5 @@ package com.mogo.eagle.function.biz.v2x.v2n.scenario.scene.road; -import android.telecom.Call; - -import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.data.enums.CommunicationType; import com.mogo.eagle.core.data.enums.DataSourceType; import com.mogo.eagle.core.data.enums.EventTypeEnumNew; @@ -171,7 +168,7 @@ public class V2XRoadEventScenario extends AbsV2XScenario imp if (isNeedChangeAngle()) { MarkerLocation location = content.getLocation(); if (location != null) { - CallerVisualAngleManager.INSTANCE.changeAngle(new RoadEvent(2, TimeUnit.SECONDS)); + CallerVisualAngleManager.INSTANCE.changeScene(new RoadEvent(2, TimeUnit.SECONDS)); } } if (entity.isNeedAddLine() && !EventTypeEnumNew.TYPE_SOCKET_ROAD_CONGESTION.getPoiType().equals(content.getPoiType())) { @@ -202,7 +199,7 @@ public class V2XRoadEventScenario extends AbsV2XScenario imp } catch (Throwable ignore) {} } } - CallerVisualAngleManager.INSTANCE.changeAngle(new Default(3, TimeUnit.SECONDS)); + CallerVisualAngleManager.INSTANCE.changeScene(new Default(3, TimeUnit.SECONDS)); } release(); } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoObuDcCombineManager.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoObuDcCombineManager.kt index d0df8332fe..37b63b34be 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoObuDcCombineManager.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoObuDcCombineManager.kt @@ -417,12 +417,12 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener showWarning(v2xType, alertContent, ttsContent, direction, object : IMoGoWarningStatusListener { override fun onShow() { - CallerVisualAngleManager.changeAngle(CrossRoad(2)) + CallerVisualAngleManager.changeScene(CrossRoad(2)) } override fun onDismiss() { super.onDismiss() - CallerVisualAngleManager.changeAngle(Default()) + CallerVisualAngleManager.changeScene(Default()) } }) } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt index c0c6211fd7..e98ed806c1 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt @@ -9,7 +9,6 @@ import com.mogo.eagle.core.data.obu.MogoObuConst import com.mogo.eagle.core.function.angle.scenes.CrossRoad import com.mogo.eagle.core.function.angle.scenes.Default import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener -import com.mogo.eagle.core.function.api.map.angle.* import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager @@ -968,14 +967,14 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener { override fun onShow() { if (appId == MogoObuShowConstants.V2X_WARNING_TYPE.BSW.toString()) { //盲区预警,展示近视角 - CallerVisualAngleManager.changeAngle(CrossRoad(2)) + CallerVisualAngleManager.changeScene(CrossRoad(2)) } } override fun onDismiss() { if (appId == MogoObuShowConstants.V2X_WARNING_TYPE.BSW.toString()) { //盲区预警,取消近视角 - CallerVisualAngleManager.changeAngle(Default()) + CallerVisualAngleManager.changeScene(Default()) } } }, diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt index 402840435a..279bb7b85a 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/MoGoVisualAngleChangeProvider.kt @@ -71,7 +71,7 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { } } if (triggerClose) { - changeAngle(Default()) + changeScene(Default()) } } @@ -83,7 +83,7 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { triggerRoadId.set(this.roadId.get()) distanceOfCarToStopLine.set(info.distance) triggerLocation.set(CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02()) - changeAngle(CrossRoad(2)) + changeScene(CrossRoad(2)) } } } @@ -130,7 +130,7 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { mLevel = level } - override fun changeAngle(scene: Scene) { + override fun changeScene(scene: Scene) { if(mLevel){ return } @@ -140,13 +140,21 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { if (delay > 0) { delay(delay) } - + val lastPriority = prevScene.get()?.priority ?: Int.MIN_VALUE + val currentPriority = scene.priority + if (lastPriority > currentPriority) { + return@launch + } doChangeAngle(scene) }.also { prevJob = it } } + override fun getCurrentScene(): Scene { + return prevScene.get() ?: Default() + } + private fun doChangeAngle(target: Scene) { val angle = target.angle CallerMapUIServiceManager.getMapUIController()?.also { @@ -159,6 +167,12 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider { notifyChanged(target) } prevScene.set(target) + if (target.displayThreshold > 0) { + scope.launch { + delay(target.displayThreshold) + doChangeAngle(Default(0)) + } + } } } } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/CrossRoad.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/CrossRoad.kt index 88d0d002f4..a50848f4c4 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/CrossRoad.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/CrossRoad.kt @@ -11,7 +11,7 @@ class CrossRoad(private val delayTime: Long): Scene { override val angle: VisualAngleMode get() = MAP_STYLE_VR_ANGLE_CROSS - override val priority: Int = 4 + override val priority: Int = 0 override val displayThreshold: Long get() = -1 diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/Default.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/Default.kt index 233246fcd6..37c2667b48 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/Default.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/Default.kt @@ -16,7 +16,7 @@ class Default(val delayTime: Long = 2, val unit: TimeUnit = TimeUnit.SECONDS): S override val angle: VisualAngleMode get() = CallerMapUIServiceManager.getMapUIController()?.getVrAngleDefaultMode() ?: MODE_MEDIUM_SIGHT - override val priority: Int = 1 + override val priority: Int = 0 override val displayThreshold: Long get() = 0 diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/LongSight.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/LongSight.kt index 55cba3b488..1a4429092b 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/LongSight.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/LongSight.kt @@ -12,7 +12,7 @@ class LongSight(private val delayTime: Long, private val unit: TimeUnit = TimeUn override val priority: Int get() = 0 override val displayThreshold: Long - get() = 0 + get() = -1 override val delay: Long get() = unit.toMillis(delayTime) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/RoadEvent.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/RoadEvent.kt index 7647705482..23ec37979b 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/RoadEvent.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/angle/scenes/RoadEvent.kt @@ -13,10 +13,10 @@ class RoadEvent(private val delayTime: Long, private val unit: TimeUnit): Scene override val angle: VisualAngleMode = CallerMapUIServiceManager.getMapUIController()?.getVrAngleDefaultMode() ?: MODE_MEDIUM_SIGHT - override val priority: Int = 5 + override val priority: Int = 0 override val displayThreshold: Long - get() = TimeUnit.SECONDS.toMillis(8) + get() = -1 override val delay: Long get() = unit.toMillis(delayTime) diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/angle/IMoGoVisualAngleChangeProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/angle/IMoGoVisualAngleChangeProvider.kt index dd71253bfd..eaf2e36e35 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/angle/IMoGoVisualAngleChangeProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/angle/IMoGoVisualAngleChangeProvider.kt @@ -6,7 +6,9 @@ interface IMoGoVisualAngleChangeProvider: IProvider { fun updateLongSightLevel(level: Boolean) - fun changeAngle(scene: Scene) + fun changeScene(scene: Scene) + + fun getCurrentScene(): Scene fun addListener(tag: String, listener: OnMoGoVisualAngleSceneChangeListener) diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt index d8a7e0031d..6d261c9689 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt @@ -22,8 +22,12 @@ object CallerVisualAngleManager { } } - fun changeAngle(scene: Scene) { - provider?.changeAngle(scene) + fun changeScene(scene: Scene) { + provider?.changeScene(scene) + } + + fun getCurrentScene(): Scene { + return provider?.getCurrentScene() ?: throw AssertionError() } fun updateLongSightLevel(level: Boolean) { From e7f38d437ba44bb1f3251a9bb1b06a2bd03bd25c Mon Sep 17 00:00:00 2001 From: renwj Date: Mon, 1 Jul 2024 15:39:30 +0800 Subject: [PATCH 2/6] =?UTF-8?q?[6.5.0][=E5=9C=B0=E5=9B=BEmarker]=20?= =?UTF-8?q?=E7=BA=BF=E7=BB=98=E5=88=B6=E6=B7=BB=E5=8A=A0=E5=A1=AB=E5=85=85?= =?UTF-8?q?=E9=80=89=E9=A1=B9[TODO]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v2n/scenario/scene/airoad/AiRoadMarker.kt | 4 ++-- .../scenario/scene/road/V2XAiRoadEventMarker.kt | 16 ++++++++++++++++ .../java/com/mogo/map/overlay/core/Level.kt | 9 +++++++-- .../java/com/mogo/map/overlay/line/Polyline.kt | 8 ++++++++ .../src/main/java/com/mogo/map/AMapWrapper.kt | 17 +++++++++++------ .../overlay/wrapper/line/AMapPolylineWrapper.kt | 12 ++++++------ 6 files changed, 50 insertions(+), 16 deletions(-) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt index 042caeb471..209ac77d44 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/airoad/AiRoadMarker.kt @@ -91,7 +91,7 @@ class AiRoadMarker { marker.entity?.apply { roadMarker.drawMarkers(this, wrapper) } } if (drawRoadLine) { - //施工中心点前方的自车行驶方向上300米距离 +/* //施工中心点前方的自车行驶方向上300米距离 var l1: CenterLine? = null var l2: CenterLine? = null mogoMapData.get()?.getCenterLineRangeInfo( @@ -118,7 +118,7 @@ class AiRoadMarker { } countDown.incrementAndGet() realMark(marker, wrapper, l1, l2, location.heading) - }) + })*/ } else { wrapper.onRemoved = { id -> aiMakers.remove(id) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt index 2e046f3b22..51496058de 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/scenario/scene/road/V2XAiRoadEventMarker.kt @@ -52,9 +52,25 @@ class V2XAiRoadEventMarker { builder.setMaxIndex(800000f) builder.setVisible(true) val line = CallerMapUIServiceManager.getOverlayManager()?.showOrUpdateLine(builder.build()) + + +// val colors2 = ArrayList() +// colors2.add(Color.argb(204, 237, 172, 21)) +// colors2.add(Color.argb(0, 255, 255, 255)) +// builder2.colors(colors2) +// builder2.points(points) +// builder2.setIsGradient(true) +// builder2.isFilledIn(true) +// builder2.useFacade(false) +// builder2.setUseGps(true) +// builder2.setWidth(10f) +//// builder2.setMaxIndex(800000f) +// builder2.setVisible(true) +// val line2 = CallerMapUIServiceManager.getOverlayManager()?.showOrUpdateLine(builder2.build()) line?.let { current.set(Pair(line, wrapper.markers)) wrapper.addLine(line) +// wrapper.addLine(line2!!) } } } diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/core/Level.kt b/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/core/Level.kt index 620cd25678..be57ac4b27 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/core/Level.kt +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/core/Level.kt @@ -21,7 +21,12 @@ enum class Level(val zIndex: Int) { GUIDE_ROUTE_LINE(75000), /** - * 道路围栏区域绘制 + * 围栏区域绘制 */ - MAP_POLYGON(76000) + MAP_POLYGON(76000), + + /** + * 围栏区域底色 + */ + MAP_POLYGON_SOLID(75500) } \ No newline at end of file diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/line/Polyline.kt b/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/line/Polyline.kt index dbd3e6e6fc..b64427be77 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/line/Polyline.kt +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/overlay/line/Polyline.kt @@ -56,6 +56,8 @@ data class Polyline(val id: String, val owner: String, val level: Level, val opt val isShowArrow: Boolean = builder.isShowArrow + val isFilledIn: Boolean = builder.isFilledIn + fun builder(): Builder { return builder } @@ -100,6 +102,8 @@ data class Polyline(val id: String, val owner: String, val level: Level, val opt internal var isShowArrow: Boolean = false + internal var isFilledIn: Boolean = false + fun setId(id: String) = apply { this.id = id } @@ -176,6 +180,10 @@ data class Polyline(val id: String, val owner: String, val level: Level, val opt this.isShowArrow = show } + fun isFilledIn(filled: Boolean) = apply { + this.isFilledIn = filled + } + fun build(): Options { if (TextUtils.isEmpty(id)) { id = UUID.randomUUID().toString() diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.kt b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.kt index bebd043d44..5e676954e6 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.kt +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.kt @@ -75,12 +75,17 @@ class AMapWrapper(map: MapAutoViewHelper?, mapView: MapAutoView, controller: IMo e(TAG, "polyline参数为空") return null } - val delegate = - (if (polylineOptions.lineWidth > 0) mAMap!!.drawThickLine(polylineOptions) else mAMap!!.drawLine( - polylineOptions - )) - ?: return null - return AMapPolylineWrapper(options.id, delegate, mMapView) + if (options.isFilledIn) { + val delegate = mAMap?.drawPolygon(polylineOptions) + return AMapPolylineWrapper(options.id, delegate, mMapView) + } else { + val delegate = + (if (polylineOptions.lineWidth > 0) mAMap?.drawThickLine(polylineOptions) else mAMap?.drawLine( + polylineOptions + )) + ?: return null + return AMapPolylineWrapper(options.id, delegate, mMapView) + } } private val batchMarkerOptions = BatchMarkerOptions() diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/overlay/wrapper/line/AMapPolylineWrapper.kt b/libraries/mogo-map/src/main/java/com/mogo/map/overlay/wrapper/line/AMapPolylineWrapper.kt index 4c19310216..f600c43367 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/overlay/wrapper/line/AMapPolylineWrapper.kt +++ b/libraries/mogo-map/src/main/java/com/mogo/map/overlay/wrapper/line/AMapPolylineWrapper.kt @@ -7,7 +7,7 @@ import com.zhidaoauto.map.sdk.open.view.MapAutoView import java.util.concurrent.atomic.* import com.zhidaoauto.map.sdk.open.renders.poyline.Polyline -class AMapPolylineWrapper(private val id: String, private val delegate: Polyline, private val mMapAutoView: MapAutoView): IMapPolylineOverlay { +class AMapPolylineWrapper(private val id: String, private val delegate: Polyline?, private val mMapAutoView: MapAutoView): IMapPolylineOverlay { private val isDestroyed by lazy { AtomicBoolean(false) } @@ -19,7 +19,7 @@ class AMapPolylineWrapper(private val id: String, private val delegate: Polyline override fun destroy() { if (isDestroyed.compareAndSet(false, true)) { try { - delegate.destroy() + delegate?.destroy() } finally { onRemoveAction?.invoke(id) } @@ -29,7 +29,7 @@ class AMapPolylineWrapper(private val id: String, private val delegate: Polyline override fun remove() { if (isRemoved.compareAndSet(false, true)) { try { - delegate.remove() + delegate?.remove() } finally { onRemoveAction?.invoke(id) } @@ -40,7 +40,7 @@ class AMapPolylineWrapper(private val id: String, private val delegate: Polyline if (isDestroyed.get() || isRemoved.get()) { return } - delegate.setVisible(visible) + delegate?.setVisible(visible) } override fun isDestroyed(): Boolean { @@ -48,7 +48,7 @@ class AMapPolylineWrapper(private val id: String, private val delegate: Polyline } override fun isVisible(): Boolean { - return delegate.isVisible() + return delegate?.isVisible() ?: false } override fun setToTop() { @@ -66,7 +66,7 @@ class AMapPolylineWrapper(private val id: String, private val delegate: Polyline delegate.also { val option = ObjectUtils.fromMogo(options,mMapAutoView) if (option != null) { - it.setOption(option) + it?.setOption(option) } } } From e76a7feec1011f4da30bbb70635feaefac00c16a Mon Sep 17 00:00:00 2001 From: renwj Date: Mon, 1 Jul 2024 15:55:15 +0800 Subject: [PATCH 3/6] =?UTF-8?q?[6.5.0][=E9=81=93=E8=B7=AF=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6]=20=E4=BF=AE=E6=AD=A3=E8=8E=B7=E5=8F=96=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6icon=E8=B5=84=E6=BA=90=E6=96=B9=E6=B3=95=E8=B0=83?= =?UTF-8?q?=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt index 4b2d3d6dbd..f6711926b9 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/v2n/pnc/V2NIdentifyDrawer.kt @@ -199,7 +199,7 @@ internal object V2NIdentifyDrawer { } } val alert = sb.toString() - CallerRoadV2NEventWindowListenerManager.show("${itx.longitude}-${itx.latitude}", itx.systemTime.toLong(), EventTypeEnumNew.getMarker3DRes(poiType), alert, isDriver, itx.cameraIp, itx.longitude, itx.latitude) + CallerRoadV2NEventWindowListenerManager.show("${itx.longitude}-${itx.latitude}", itx.systemTime.toLong(), EventTypeEnumNew.getUpdateIconRes(poiType), alert, isDriver, itx.cameraIp, itx.longitude, itx.latitude) } } //消息埋点 From c3e6c1305639a5f157eb79789a7912b697477bee Mon Sep 17 00:00:00 2001 From: xuxinchao Date: Mon, 1 Jul 2024 18:10:20 +0800 Subject: [PATCH 4/6] =?UTF-8?q?[6.5.0]=E8=A1=8C=E7=A8=8B=E6=80=BB=E7=BB=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hmi/ui/widget/ItinerarySummaryDialog.kt | 48 ++- ...summary.png => bg_itinerary_summary_p.png} | Bin .../res/drawable-xhdpi/icon_summary_close.png | Bin 6460 -> 1541 bytes .../drawable-xhdpi/icon_summary_close_p.png | Bin 0 -> 6460 bytes .../res/drawable/bg_itinerary_summary.xml | 7 + .../res/drawable/bg_summary_achievement.xml | 7 + .../res/drawable/bg_summary_achievement_p.xml | 8 + .../main/res/drawable/bg_summary_service.xml | 11 + .../res/drawable/bg_summary_service_p.xml | 7 + .../res/layout/dialog_itinerary_summary.xml | 145 ++++--- .../res/layout/dialog_itinerary_summary_p.xml | 382 ++++++++++++++++++ .../src/main/res/values/color.xml | 12 +- .../src/main/res/values/styles.xml | 16 + .../src/main/res/values/dimens.xml | 2 + 14 files changed, 568 insertions(+), 77 deletions(-) rename core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/{bg_itinerary_summary.png => bg_itinerary_summary_p.png} (100%) create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_summary_close_p.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_itinerary_summary.xml create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement.xml create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement_p.xml create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service.xml create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service_p.xml create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary_p.xml diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ItinerarySummaryDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ItinerarySummaryDialog.kt index 5f48ada220..58c69affd5 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ItinerarySummaryDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ItinerarySummaryDialog.kt @@ -2,34 +2,54 @@ package com.mogo.eagle.core.function.hmi.ui.widget import android.app.Dialog import android.content.Context -import android.view.LayoutInflater -import androidx.lifecycle.LifecycleObserver +import android.os.Bundle +import android.widget.ImageView import com.mogo.eagle.core.function.hmi.R -import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog +import me.jessyan.autosize.utils.AutoSizeUtils /** * 行程总结View * 鹰眼6.5.0需求 */ -class ItinerarySummaryDialog(context: Context) : BaseFloatDialog(context), LifecycleObserver { +class ItinerarySummaryDialog(context: Context, isDriver: Boolean, theme: Int) : + Dialog(context, theme) { - companion object { - private const val TAG = "ItinerarySummaryView" + private val mContext: Context + private val isDriver: Boolean - - - } + private var ivSummaryClose: ImageView ?= null init { - setContentView(R.layout.dialog_itinerary_summary) + this.mContext = context + this.isDriver = isDriver } - override fun onAttachedToWindow() { - super.onAttachedToWindow() + override fun onCreate(savedInstanceState: Bundle?){ + super.onCreate(savedInstanceState) + val params = window!!.attributes + if(isDriver){ + setContentView(R.layout.dialog_itinerary_summary) + params.height = AutoSizeUtils.dp2px(context,840f) + params.width = AutoSizeUtils.dp2px(context,1600f) + }else{ + setContentView(R.layout.dialog_itinerary_summary_p) + params.height = AutoSizeUtils.dp2px(context,1170f) + params.width = AutoSizeUtils.dp2px(context,2158f) + } + window!!.attributes = params //向WindowManager设置属性 + setCanceledOnTouchOutside(false) + initEvent() } - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() + private fun initEvent(){ + //关闭Dialog按钮 + ivSummaryClose = findViewById(R.id.ivSummaryClose) + ivSummaryClose?.setOnClickListener { + dismiss() + } + + + } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_itinerary_summary.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_itinerary_summary_p.png similarity index 100% rename from core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_itinerary_summary.png rename to core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_itinerary_summary_p.png diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_summary_close.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_summary_close.png index 7acdca23294a97556140a004d037db5f4323a942..2fbe977936e06d5da009074669c9a693c377ef53 100644 GIT binary patch delta 1489 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

1gAWn8k7H zfB>SW&I}k)Q65xzxu+wQ0jozU19IyDncjjZFCEhSh!%ys0f>!T1yoVB_sgX6Xz6T0 z`BtA4e;#Z$mXhDNb(7h+ZDSt5=YS*fcK>`I$|HAaHW&DHJgD+Eip^8_Le8cG3`I>_ z2JDXYm$oJUL-wZFjlvR*kwWA&oLJegnlyL@wx-s{>cPv+(xvv}70A*4ddo%yHTN$< z##GkY(w}{kB>v@I$3B>dI`4Zt{cE;vR^KAZe;Q)19<;9+IrFwwc>tA|mPdG3Gc3u2 zDlfH?>gs{6tzTC9Az;XWg>Q7vnDoh3YBq>9$8+Z@p_~*#pU=%guD`$E{QW0gN$d7VTE(l!*XCVH?b=5e>K+!_|aGW4Gb(^CD zrWgB0|5|kJ5N9JCqC6{=@h<#>>B-_w&nMCW}qHmv47M3MIY)$_zY) z34_`q`0wofBN*o)Uxn}mif@IGPdm!XjuedjzE%F+D~v$~iVZ83 z)bb)!nLFpH9(JNDoB#bSFYq`B}JuMFfiwReCSe`Ta4 zV09qw+#@G(H@R?YTbMYclqql3vP5_gf?`7>1y5T|P{X*1aUN`BkwF&*(nyte4r(tx zYEi$VFZxF$%acPqYE|Vczd2$$_f$ow1onoFYu=G-mI`+=H4v#``?|g|sPtf1|!vvp{k; zFbZwhuLTwgyEb3(s$52&rgCFq^akoBL4e?gK72kK_iSLVjZ`|c&GbDPbi;A#k@`A5 z&+(A@It5-ZQEVWrX<5-=3f73Yp2^NY;=sW297wKRq?>_y);qy$(?33s8fm{j>^8zp$ z=LgEts0)hLWFP1Ue_N|y^4ew{2K&IiDIR?h6)XbA6wh+ak?-%D-Mfa@d>RBQb?Krs z5DI?w@~>CUn9d_o%woMzi-J5%2vqVtB~2KxS>FAPcj%(jFWE~Wf3f}%vIQRBg2XkF z--aabuABJ{gR7$CFU$uk61rTOm<9?GrNZyNn=1r)70o}V2I#Nq6b zpOW7v`QfhZL$3zjx^`J{SEXsQ#`I%EWE%=Q|bBUA+5oLk}JMy4aE%X-{l-!Fx zj|#XW4~iB}V+L}4z7ugLx??sgRRg(LII+S=&V;< z0Bi+Rg?O{=6!VMP3*ydgH*6W|>6{wI>h*FS+8G4wOXA%!*>Wp}l(3qezP$ZGK`QFQLAeFuUgpDq_^5P|TpV_wd7`3l?8w z@cW0mYL#jRf5M9$K%lI~q(O{w02a$4PXHUtt>x1bADKP3-0~;<@pC`TC*`6hKlyQ& zfb-S;x&AJ2z}UO*?0Ik@7L{c}}e_n=}8^b8jq3TJfz>9DP?7PV;GIwl}KT zYIG~G(LOAtVnxeeXs1c%8ToaL2f97`hn|}H^9n43e?9fm;Z>bP{!0`S$RC@F8yFVTNO9hsR?R);M zwNcc$e<@9)t0bWQQWC}pDuJdxX%lV@x4D6T`7@5l9E#G`le@27oBci(W6d``Bfv80 z$6kMZpmnmfLx8+qK3-foJ7DC%mTdV@pgzNy31>o-`hd$d`(mC)C>(^(W`!lC6 zi=I(n{UYQ-cm8A)4atRWNWP&bKldU3wO;@ne?fE)PT5(3Nr$-NtSNrlvNA{IlZ}zH z(sV>FNT2v|&lJxb&s4nHI1j&g@PgLV!WB`Ju83p#4FwY~7iIiq`Xc#tP`pvI{~2XR z{@||_%ipF6O%2}QACr&FBb|j)M{e1^;p5sMXK>*E0T46zD>aWT=l}o!07*qo J1w^hwV1lDzt3&_* diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_summary_close_p.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_summary_close_p.png new file mode 100644 index 0000000000000000000000000000000000000000..7acdca23294a97556140a004d037db5f4323a942 GIT binary patch literal 6460 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 WGx#etk1gl`0000 + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement.xml new file mode 100644 index 0000000000..80b6c5bb1c --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement_p.xml new file mode 100644 index 0000000000..4b879961f7 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_achievement_p.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service.xml new file mode 100644 index 0000000000..45c09c6ed6 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service.xml @@ -0,0 +1,11 @@ + + + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service_p.xml new file mode 100644 index 0000000000..7963e81783 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_summary_service_p.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary.xml index 889d4a727f..df23d3d702 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary.xml @@ -1,53 +1,56 @@ @@ -147,9 +152,10 @@ app:layout_constraintLeft_toLeftOf="@id/tvLightServices" app:layout_constraintBottom_toTopOf="@id/tvLightServices" app:layout_constraintRight_toLeftOf="@id/tvLightServicesUnit" - android:textSize="@dimen/sp_94" + android:textSize="@dimen/sp_72" android:textColor="@color/summary_service_num" app:layout_constraintHorizontal_chainStyle="packed" + android:text="4" /> @@ -172,9 +179,10 @@ app:layout_constraintLeft_toLeftOf="@id/tvInfoTip" app:layout_constraintBottom_toTopOf="@id/tvInfoTip" app:layout_constraintRight_toLeftOf="@id/tvInfoTipUnit" - android:textSize="@dimen/sp_94" + android:textSize="@dimen/sp_72" android:textColor="@color/summary_service_num" app:layout_constraintHorizontal_chainStyle="packed" + android:text="3" /> @@ -197,9 +206,10 @@ app:layout_constraintBottom_toTopOf="@id/tvVehicleTip" app:layout_constraintLeft_toLeftOf="@id/tvVehicleTip" app:layout_constraintRight_toLeftOf="@id/tvVehicleTipUnit" - android:textSize="@dimen/sp_94" + android:textSize="@dimen/sp_72" android:textColor="@color/summary_service_num" app:layout_constraintHorizontal_chainStyle="packed" + android:text="2" /> @@ -222,9 +233,11 @@ app:layout_constraintLeft_toLeftOf="@id/tvVulnerableTip" app:layout_constraintBottom_toTopOf="@id/tvVulnerableTip" app:layout_constraintRight_toLeftOf="@id/tvVulnerableTipUnit" - android:textSize="@dimen/sp_94" + android:textSize="@dimen/sp_72" android:textColor="@color/summary_service_num" app:layout_constraintHorizontal_chainStyle="packed" + android:text="5" + /> @@ -244,11 +258,12 @@ @@ -338,8 +362,10 @@ app:layout_constraintTop_toBottomOf="@id/viewDangerLayout" app:layout_constraintLeft_toLeftOf="@id/viewDangerLayout" android:text="@string/summary_danger_tip" - android:textSize="@dimen/sp_24" + android:textSize="@dimen/sp_16" android:textColor="@color/summary_tip" + android:layout_marginTop="@dimen/dp_15" + android:layout_marginStart="@dimen/dp_m_10" /> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary_p.xml new file mode 100644 index 0000000000..e56ca2fdf1 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_itinerary_summary_p.xml @@ -0,0 +1,382 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml index 820a98b51d..af6f482247 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml @@ -86,11 +86,15 @@ #FF1E32D9 #243959 - #49546A - #464646 + #7C93C2 + #49546A + #FFFFFF + #464646 #24313E - #106FF0 - #42464F + #2DF0FE + #106FF0 + #6A758D + #42464F #131415 #FF3B2D diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/styles.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/styles.xml index 99c0c612b0..7bd309ce51 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/styles.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/styles.xml @@ -88,4 +88,20 @@ @dimen/dp_10 + + + + diff --git a/core/mogo-core-res/src/main/res/values/dimens.xml b/core/mogo-core-res/src/main/res/values/dimens.xml index 0458ee6ea7..273a1d3513 100644 --- a/core/mogo-core-res/src/main/res/values/dimens.xml +++ b/core/mogo-core-res/src/main/res/values/dimens.xml @@ -1079,9 +1079,11 @@ 48dp 52dp 55dp + 72dp 76dp 94dp 120dp + 150dp 195dp From 39f299aed81c20249600e05cd27051965de9a3bb Mon Sep 17 00:00:00 2001 From: xuxinchao Date: Mon, 1 Jul 2024 18:35:33 +0800 Subject: [PATCH 5/6] =?UTF-8?q?[6.5.0]=E8=87=AA=E5=8A=A8=E6=8E=A2=E6=9F=A5?= =?UTF-8?q?UI=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/res/layout/item_auto_exploration.xml | 5 ++++- .../src/main/res/layout/item_auto_exploration_p.xml | 5 ++++- .../src/main/res/layout/view_automatic_exploration.xml | 10 +++++----- .../main/res/layout/view_automatic_exploration_p.xml | 2 +- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration.xml index 33e28a5719..391a77d460 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration.xml @@ -3,7 +3,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" - android:layout_margin="@dimen/dp_10" + android:layout_marginTop="@dimen/dp_10" + android:layout_marginBottom="@dimen/dp_10" > \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration_p.xml index 561bb04419..1220778189 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration_p.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_auto_exploration_p.xml @@ -3,7 +3,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" - android:layout_margin="@dimen/dp_10"> + android:layout_marginTop="@dimen/dp_10" + android:layout_marginBottom="@dimen/dp_10"> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration.xml index 4627a06d4b..0cccd76263 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration.xml @@ -7,8 +7,8 @@ \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration_p.xml index 23e371e96d..8ea703c520 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration_p.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_automatic_exploration_p.xml @@ -47,7 +47,6 @@ app:layout_constraintRight_toRightOf="parent" android:src="@drawable/icon_exploration_close" android:contentDescription="@string/exploration_close" - android:padding="@dimen/dp_20" /> \ No newline at end of file From 6ec0c8106167ea9316813cf3a41efc9136493844 Mon Sep 17 00:00:00 2001 From: EmArrow Date: Mon, 1 Jul 2024 19:36:58 +0800 Subject: [PATCH 6/6] [6.5.0] fix ui problem of anim and remove day night logic in mapview --- .../main/res/layout/taxi_p_base_fragment.xml | 2 +- .../eagle/core/function/view/MapBizView.kt | 33 +++++---------- .../eagle/core/function/view/MapRoamView.kt | 13 ------ .../function/view/RoadCrossRoamListAdapter.kt | 7 +++- .../core/function/view/RoadCrossRoamView.kt | 42 ++++++++++++++++--- .../drawable-nodpi/anim_road_cross_roam.xml | 11 ----- .../res/layout/view_road_cross_roam_light.xml | 26 ++++++------ .../src/main/res/values/color.xml | 2 + 8 files changed, 70 insertions(+), 66 deletions(-) delete mode 100644 core/function-impl/mogo-core-function-map/src/main/res/drawable-nodpi/anim_road_cross_roam.xml diff --git a/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml b/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml index d009a992fa..e84d8a4d64 100644 --- a/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml +++ b/OCH/taxi/passenger/src/main/res/layout/taxi_p_base_fragment.xml @@ -195,7 +195,7 @@ - if(oldV != newV){ - if(newV){ + private var accLimit: Boolean by Delegates.observable(false) { _, oldV, newV -> + if (oldV != newV) { + if (newV) { turn(4) - }else{ + } else { turn(0) } } @@ -119,7 +107,7 @@ class MapBizView(context: Context?, attrs: AttributeSet?) : MogoMapView(context, accLimit = gnssInfo.acceleration < accThreshold } - private var currentLevel:Int = 0 + private var currentLevel: Int = 0 override fun onAutopilotLightSwitchData(lightSwitch: Chassis.LightSwitch?) { super.onAutopilotLightSwitchData(lightSwitch) @@ -128,9 +116,11 @@ class MapBizView(context: Context?, attrs: AttributeSet?) : MogoMapView(context, Chassis.LightSwitch.LIGHT_LEFT_VALUE -> { //左转灯 turn(1) } + Chassis.LightSwitch.LIGHT_RIGHT_VALUE -> { //右转灯 turn(2) } + Chassis.LightSwitch.LIGHT_NONE_VALUE -> { turn(0) } @@ -147,7 +137,6 @@ class MapBizView(context: Context?, attrs: AttributeSet?) : MogoMapView(context, override fun onDestroy() { // 先取消注册数据,再onDestroy - CallerSkinModeListenerManager.removeListener(TAG) CallerChassisLocationWGS84ListenerManager.removeListener(TAG) CallerChassisLamplightListenerManager.removeListener(TAG) super.onDestroy() diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/MapRoamView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/MapRoamView.kt index 6928c87050..a5aac288fa 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/MapRoamView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/MapRoamView.kt @@ -7,10 +7,8 @@ import android.util.AttributeSet import android.util.Log import androidx.lifecycle.LifecycleObserver import com.mogo.eagle.core.function.api.map.road.IMoGoMapRoadListener -import com.mogo.eagle.core.function.api.setting.IMoGoSkinModeChangeListener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager -import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider import com.mogo.map.MogoMap.Companion.MAP_ROAM import com.mogo.map.MogoMapView @@ -19,7 +17,6 @@ import com.mogo.map.uicontroller.VisualAngleMode class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context, attrs), - IMoGoSkinModeChangeListener, LifecycleObserver, IMoGoMapRoadListener { companion object { @@ -33,7 +30,6 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context override fun onAttachedToWindow() { super.onAttachedToWindow() initMapView() - CallerSkinModeListenerManager.addListener(TAG, this) CallerMapRoadListenerManager.addListener(TAG, this) } @@ -72,14 +68,6 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context return map?.uiController } - override fun onSkinModeChange(skinMode: Int) { - if (skinMode == 0) { - getUI()?.stepInDayMode(false) - } else if (skinMode == 1) { - getUI()?.stepInDayMode(true) - } - } - @SuppressLint("ObsoleteSdkInt") override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) { super.onSizeChanged(w, h, oldw, oldh) @@ -111,7 +99,6 @@ class MapRoamView(context: Context?, attrs: AttributeSet?) : MogoMapView(context override fun onDestroy() { // 先取消注册数据,再onDestroy - CallerSkinModeListenerManager.removeListener(TAG) CallerMapRoadListenerManager.removeListener(TAG) super.onDestroy() } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamListAdapter.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamListAdapter.kt index 370d8f7ab0..97923c4251 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamListAdapter.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamListAdapter.kt @@ -13,7 +13,7 @@ import com.mogo.eagle.core.function.map.R import kotlin.random.Random -class RoadCrossRoamListAdapter(private val mContext: Context) : RecyclerView.Adapter() { +class RoadCrossRoamListAdapter(private val mContext: Context, private val lightMode: Boolean) : RecyclerView.Adapter() { private val items: MutableList = mutableListOf() @@ -35,6 +35,11 @@ class RoadCrossRoamListAdapter(private val mContext: Context) : RecyclerView.Ad override fun onBindViewHolder(holder: ViewHolder, position: Int) { val item = items[position] + if(lightMode){ + holder.textView.setTextColor(mContext.getColor(R.color.color_191A1C)) + }else{ + holder.textView.setTextColor(mContext.getColor(R.color.white)) + } holder.textView.text = item // 随机决定是否显示ProgressBar // if (Random.nextBoolean()) { // 50%的几率显示ProgressBar diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamView.kt index 80d44345e4..e5e523c4f6 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/RoadCrossRoamView.kt @@ -8,6 +8,9 @@ import android.util.AttributeSet import android.util.Log import android.view.LayoutInflater import android.view.View +import android.view.animation.Animation +import android.view.animation.AnimationUtils +import android.view.animation.LinearInterpolator import androidx.constraintlayout.widget.ConstraintLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView @@ -21,8 +24,11 @@ import kotlinx.android.synthetic.main.view_road_cross_roam.view.ivCoverRoam import kotlinx.android.synthetic.main.view_road_cross_roam.view.ivRoadRoamClose import kotlinx.android.synthetic.main.view_road_cross_roam.view.lvRoadCrossRoamTip import kotlinx.android.synthetic.main.view_road_cross_roam.view.mapRoamView +import kotlinx.android.synthetic.main.view_road_cross_roam_light.view.ivZhiRoadRoamView +import kotlinx.android.synthetic.main.view_road_cross_roam_light.view.tvRoadRoamTitle import kotlin.properties.Delegates + class RoadCrossRoamView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -40,12 +46,13 @@ class RoadCrossRoamView @JvmOverloads constructor( } private var animator: ObjectAnimator? = null + private var lightMode = CallerSkinModeListenerManager.getMode() == 1 init { - val res = when (CallerSkinModeListenerManager.getMode()) { - 0 -> R.layout.view_road_cross_roam - 1 -> R.layout.view_road_cross_roam_light - else -> R.layout.view_road_cross_roam + val res = if (lightMode) { + R.layout.view_road_cross_roam_light + } else { + R.layout.view_road_cross_roam } LayoutInflater.from(context).inflate(res, this, true) lvRoadCrossRoamTip.layoutManager = LinearLayoutManager(context) @@ -84,14 +91,15 @@ class RoadCrossRoamView @JvmOverloads constructor( override fun onStopLineInfo(info: StopLine) { super.onStopLineInfo(info) showState = info.distance < 200 && info.distance > 100 - Log.i("emArrow","showState $showState , distance:${info.distance}") + Log.i("emArrow", "showState $showState , distance:${info.distance}") } private fun attachView() { this.visibility = View.VISIBLE + ivZhiRoadRoamView.visibility = View.VISIBLE mapRoamView.visibility = View.VISIBLE mapRoamView.openRoam() - lvRoadCrossRoamTip.adapter = RoadCrossRoamListAdapter(context) + lvRoadCrossRoamTip.adapter = RoadCrossRoamListAdapter(context, lightMode) // 创建横向移动的动画 if (animator == null) { animator = @@ -106,6 +114,22 @@ class RoadCrossRoamView @JvmOverloads constructor( animator?.repeatCount = ValueAnimator.INFINITE // 设置动画无限重复 animator?.repeatMode = ValueAnimator.RESTART // 设置动画来回移动 animator?.start() + + if (lightMode) { +// val rotateAnimation: Animation = AnimationUtils.loadAnimation( +// context, R.anim.anim_road_cross_roam +// ) +// ivZhiRoadRoamView.startAnimation(rotateAnimation) + val rotationAnim = ObjectAnimator.ofFloat(ivZhiRoadRoamView, "rotation", 0f, 360f) + rotationAnim.repeatCount = ValueAnimator.INFINITE + rotationAnim.repeatMode = ValueAnimator.RESTART + rotationAnim.duration = 1000 + rotationAnim.interpolator = LinearInterpolator() + rotationAnim.start() + tvRoadRoamTitle.setTextColor(context.getColor(R.color.color_131415)) + } else { + tvRoadRoamTitle.setTextColor(context.getColor(R.color.white)) + } } private fun detachView() { @@ -113,12 +137,18 @@ class RoadCrossRoamView @JvmOverloads constructor( mapRoamView.visibility = View.GONE lvRoadCrossRoamTip.adapter = null animator?.cancel() + if(lightMode){ + ivZhiRoadRoamView.clearAnimation() + } this.visibility = View.GONE } override fun onDetachedFromWindow() { super.onDetachedFromWindow() animator?.cancel() + if(lightMode){ + ivZhiRoadRoamView.clearAnimation() + } CallerMapRoadListenerManager.removeListener(TAG) } diff --git a/core/function-impl/mogo-core-function-map/src/main/res/drawable-nodpi/anim_road_cross_roam.xml b/core/function-impl/mogo-core-function-map/src/main/res/drawable-nodpi/anim_road_cross_roam.xml deleted file mode 100644 index 1c8a56caa0..0000000000 --- a/core/function-impl/mogo-core-function-map/src/main/res/drawable-nodpi/anim_road_cross_roam.xml +++ /dev/null @@ -1,11 +0,0 @@ - - diff --git a/core/function-impl/mogo-core-function-map/src/main/res/layout/view_road_cross_roam_light.xml b/core/function-impl/mogo-core-function-map/src/main/res/layout/view_road_cross_roam_light.xml index 4c195a66bb..f8528192bc 100644 --- a/core/function-impl/mogo-core-function-map/src/main/res/layout/view_road_cross_roam_light.xml +++ b/core/function-impl/mogo-core-function-map/src/main/res/layout/view_road_cross_roam_light.xml @@ -8,15 +8,14 @@ + app:layout_constraintTop_toTopOf="parent" + app:styleMode="MAP_STYLE_DAY_VR_TAXI" /> @@ -73,9 +75,9 @@ android:id="@+id/ivCoverRoam" android:layout_width="@dimen/dp_120" android:layout_height="@dimen/dp_300" + android:src="@drawable/icon_cover_road_roam" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" - android:src="@drawable/icon_cover_road_roam" tools:ignore="ContentDescription" /> @@ -83,8 +85,8 @@ android:id="@+id/lvRoadCrossRoamTip" android:layout_width="match_parent" android:layout_height="@dimen/dp_200" - android:layout_marginTop="@dimen/dp_30" android:layout_marginLeft="@dimen/dp_30" + android:layout_marginTop="@dimen/dp_30" android:layout_marginRight="@dimen/dp_30" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" diff --git a/core/mogo-core-res/src/main/res/values/color.xml b/core/mogo-core-res/src/main/res/values/color.xml index 510fbcda51..b64cb72842 100644 --- a/core/mogo-core-res/src/main/res/values/color.xml +++ b/core/mogo-core-res/src/main/res/values/color.xml @@ -17,6 +17,8 @@ #1A000000 #FF2966EC #1F9BFE + #191A1C + #131415 #256BFF #3E7BFE #323C6F