[V2X][Road]红色渐变逻辑优化
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
package com.mogo.eagle.core.function.v2x.events.scenario.scene.airoad
|
||||
|
||||
import android.animation.*
|
||||
import android.content.*
|
||||
import android.graphics.*
|
||||
import android.util.*
|
||||
import android.view.animation.*
|
||||
import androidx.lifecycle.*
|
||||
import androidx.lifecycle.Lifecycle.Event
|
||||
import androidx.lifecycle.Lifecycle.Event.ON_CREATE
|
||||
@@ -21,6 +23,7 @@ import io.netty.util.internal.*
|
||||
import java.util.*
|
||||
import java.util.concurrent.*
|
||||
import java.util.concurrent.atomic.*
|
||||
import kotlin.collections.ArrayList
|
||||
|
||||
/**
|
||||
* Ai云道路施工事件,道路颜色标记类
|
||||
@@ -41,7 +44,8 @@ object AiRoadMarker {
|
||||
|
||||
private val line by lazy { AtomicReference<IMogoPolyline>() }
|
||||
|
||||
private val colors = arrayListOf(Color.parseColor("#002ABAD9"), Color.parseColor("#FF7A30"))
|
||||
private val START_COLOR = Color.parseColor("#002ABAD9")
|
||||
private val END_COLOR = Color.parseColor("#FFFF7A30")
|
||||
|
||||
private val markers = ConcurrentSet<Marker>()
|
||||
|
||||
@@ -51,7 +55,6 @@ object AiRoadMarker {
|
||||
setGps(true)
|
||||
width(50f)
|
||||
useGradient(true)
|
||||
colorValues(colors)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -236,8 +239,16 @@ object AiRoadMarker {
|
||||
return
|
||||
}
|
||||
removeLine()
|
||||
val evaluator = ArgbEvaluator()
|
||||
val interceptor = DecelerateInterpolator(1.5f)
|
||||
val total = points.size
|
||||
val colors = ArrayList<Int>()
|
||||
(0..total).forEach { i ->
|
||||
colors += evaluator.evaluate(interceptor.getInterpolation(i * 1f / total), START_COLOR, END_COLOR) as Int
|
||||
}
|
||||
var line = line.get()
|
||||
options.points(points)
|
||||
options.colorValues(colors)
|
||||
Logger.d(TAG, "--- marker --- 7 --- points: ${points.size}")
|
||||
if (line == null || line.isDestroyed) {
|
||||
val l = overlayManager.addPolyline(options)
|
||||
|
||||
Reference in New Issue
Block a user