From f6aaa15b413de3f4c81bcc994d30743d01d6f4d7 Mon Sep 17 00:00:00 2001 From: lianglihui Date: Wed, 15 Dec 2021 15:21:04 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BD=A6=E5=89=8D=E5=BC=95=E5=AF=BC=E7=BA=BF?= =?UTF-8?q?=20=E4=BC=98=E5=8C=96=E6=B8=90=E5=8F=98=E8=89=B2=E6=95=88?= =?UTF-8?q?=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/smp/SmallMapFragment.java | 7 +++- .../main/java/com/mogo/utils/ColorUtils.java | 32 +++++++++---------- .../routeoverlay/MogoRouteOverlayManager.java | 2 +- .../routeoverlay/RouteOverlayDrawer.java | 7 ++-- 4 files changed, 27 insertions(+), 21 deletions(-) diff --git a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java index cb2010ea96..3f9b9c3d8e 100644 --- a/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java +++ b/core/function-impl/mogo-core-function-smp/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java @@ -92,7 +92,12 @@ public class SmallMapFragment extends BaseFragment implements IMogoSmallMapProvi @Override public void clearPolyline() { if (mSmallMapDirectionView != null) { - mSmallMapDirectionView.clearPolyline(); + UiThreadHandler.post(new Runnable() { + @Override + public void run() { + mSmallMapDirectionView.clearPolyline(); + } + }); } } diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/ColorUtils.java b/foudations/mogo-utils/src/main/java/com/mogo/utils/ColorUtils.java index dd8a6c4b35..677245baca 100644 --- a/foudations/mogo-utils/src/main/java/com/mogo/utils/ColorUtils.java +++ b/foudations/mogo-utils/src/main/java/com/mogo/utils/ColorUtils.java @@ -102,30 +102,30 @@ public class ColorUtils { if (step >= 3) { int colorStep = (int) Math.floor(step/2); // 计算每一步的差值 - int aStep = (cColor[0] - sColor[0]) / colorStep; - int rStep = (cColor[1] - sColor[1]) / colorStep; - int gStep = (cColor[2] - sColor[2]) / colorStep; - int bStep = (cColor[3] - sColor[3]) / colorStep; + float aStep = (cColor[0] - sColor[0]) / colorStep; + float rStep = (cColor[1] - sColor[1]) / colorStep; + float gStep = (cColor[2] - sColor[2]) / colorStep; + float bStep = (cColor[3] - sColor[3]) / colorStep; for (int i = 0; i < colorStep; i++) { gradientColorArr.add( - Color.argb(aStep * i + sColor[0], - rStep * i + sColor[1], - gStep * i + sColor[2], - bStep * i + sColor[3])); + Color.argb((int)(aStep * i + sColor[0]), + (int)(rStep * i + sColor[1]), + (int)(gStep * i + sColor[2]), + (int)(bStep * i + sColor[3]))); } - int aStep_ = (eColor[0] - cColor[0]) / colorStep; - int rStep_ = (eColor[1] - cColor[1]) / colorStep; - int gStep_ = (eColor[2] - cColor[2]) / colorStep; - int bStep_ = (eColor[3] - cColor[3]) / colorStep; + float aStep_ = (eColor[0] - cColor[0]) / colorStep; + float rStep_ = (eColor[1] - cColor[1]) / colorStep; + float gStep_ = (eColor[2] - cColor[2]) / colorStep; + float bStep_ = (eColor[3] - cColor[3]) / colorStep; for (int i = 0; i < colorStep; i++) { gradientColorArr.add( - Color.argb(aStep_ * i + cColor[0], - rStep_ * i + cColor[1], - gStep_ * i + cColor[2], - bStep_ * i + cColor[3])); + Color.argb((int)(aStep_ * i + cColor[0]), + (int)(rStep_ * i + cColor[1]), + (int)(gStep_ * i + cColor[2]), + (int)(bStep_ * i + cColor[3]))); } } else { diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java index 3c8d022bbf..0bfae02dc8 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java @@ -56,7 +56,7 @@ public class MogoRouteOverlayManager implements IMoGoAutopilotPlanningListener, ADASTrajectoryInfo adasTrajectoryInfo = trajectoryInfos.get(0); double lat = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLat(); double lon = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLon(); - + Log.d(TAG, "size:" + trajectoryInfos.size()); Log.d(TAG, "trajectoryInfos:" + adasTrajectoryInfo.getLat()+":"+adasTrajectoryInfo.getLon()); Log.d(TAG, "location:" + lat+":"+lon); List mogoLatLngs = new ArrayList<>(); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java index efcb7673ee..3dbb5beefb 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java @@ -118,16 +118,17 @@ public class RouteOverlayDrawer { mPolylinePointList.add(latLng); } mPolylineColors.clear(); - mPolylineColors.addAll(ColorUtils.gradientAlpha_("#FF2AAFFD", "#FF2965ED", "#002965ED", mPolylinePointList.size())); +// mPolylineColors.addAll(ColorUtils.gradientAlpha_("#FF2AAFFD", "#7b2965ED", "#002965ED", mPolylinePointList.size())); + mPolylineColors.addAll(ColorUtils.gradientAlpha("#FF2AAFFD", "#002965ED", mPolylinePointList.size())); // 线条粗细,渐变,渐变色值 mPolylineOptions.width(12).useGradient(true).colorValues(mPolylineColors); if (mMoGoPolyline == null || mMoGoPolyline.isDestroyed()){ mPolylineOptions.points(mPolylinePointList); mMoGoPolyline = mogoOverlayManager.addPolyline(mPolylineOptions); }else { - mMoGoPolyline.setPoints(mPolylinePointList); + mPolylineOptions.points(mPolylinePointList); + mMoGoPolyline.setOption(mPolylineOptions); } - } } }