add func of tracker set color

This commit is contained in:
zhongchao
2022-06-24 13:13:14 +08:00
parent 20e0f8a1b1
commit 8af7319f47
3 changed files with 39 additions and 36 deletions

View File

@@ -13,6 +13,7 @@ import mogo.telematics.pad.MessagePad.TrackedObject
import java.util.*
import java.util.concurrent.ConcurrentHashMap
import java.util.function.Consumer
import kotlin.collections.ArrayList
/**
* @author xiaoyuzhou
@@ -52,37 +53,36 @@ class IdentifyOriginDataDrawer : Identify {
//todo reset color
override fun renderPlanningWarningObj(planningObjects: List<MessagePad.PlanningObject>?) {
// if (planningObjects == null) {
// if (colorTrafficData.size == 0) {
// return
// }
// colorTrafficData.forEach {
// val cacheData = mMarkersCaches[it] //todo 是否要直接绘制 还是等下一帧
// if (cacheData != null) {
// mMarkersCaches[it] = cacheData.toBuilder().setColor("#D8D8D8FF").build()
// }
// }
// colorTrafficData.clear()
// return
// }
// val tempTrafficData = ArrayList<TrackedObject>()
// planningObjects.forEach {
// val trackId = it.uuid.toString()
// val cacheData = mMarkersCaches[trackId]
// if (cacheData != null) {
// colorTrafficData.add(trackId)
// when (it.type) {
// 0 -> {
// tempTrafficData.add(cacheData.toBuilder().setColor("#FF3C45FF").build())
// }
// 1 -> {
// tempTrafficData.add(cacheData.toBuilder().setColor("#FFD53EFF").build())
// }
// }
// }
// MogoMarkerManager.getInstance(AbsMogoApplication.getApp())
// .updateBatchMarkerPosition(tempTrafficData)
// }
// todo test code 用于模拟感知物
// val resultList: ArrayList<TrackedObject> = ArrayList()
// val obj = TrackedObject.newBuilder().setUuid(67025).setLongitude(112.57413261072935).setLatitude(26.821571389153718).setHeading(329.9748205834151).setSpeed(0.0).setType(3).build()
// resultList.add(obj)
// renderAdasRecognizedResult(resultList)
if (planningObjects == null) {
if (colorTrafficData.size == 0) {
return
}
colorTrafficData.forEach {
val cacheData = mMarkersCaches[it] //todo 是否要直接绘制 还是等下一帧
if (cacheData != null) {
mMarkersCaches[it] = cacheData.toBuilder().setColor("#D8D8D8FF").build()
}
}
colorTrafficData.clear()
return
}
val tempTrafficData = ArrayList<TrackedObject>()
planningObjects.forEach {
val trackId = it.uuid.toString()
val cacheData = mMarkersCaches[trackId]
if (cacheData != null) {
colorTrafficData.add(trackId)
tempTrafficData.add(cacheData.toBuilder().setColor("#FFD53EFF").build())
}
MogoMarkerManager.getInstance(AbsMogoApplication.getApp())
.updateBatchMarkerPosition(tempTrafficData)
}
}
/**

View File

@@ -130,6 +130,9 @@ public class ObjectUtils {
markerOptions.setRotateAngle((float) trafficData.getHeading());
markerOptions.setLat(trafficData.getLatitude());
markerOptions.setLon(trafficData.getLongitude());
if(trafficData.getColor()!=null && !trafficData.getColor().isEmpty()){
markerOptions.setColor(trafficData.getColor());
}
} catch (Exception e) {
e.printStackTrace();
}

View File

@@ -376,9 +376,9 @@ public class RouteOverlayDrawer {
isExcept = true;
}
long drawEnd = SystemClock.elapsedRealtime();
Log.d("Route", "draw cost:" + (drawEnd - drawStart) + "ms and isExcept:" + isExcept + "::removeCount:" + removeCount + "::total:" + total);
// Log.d("Route", "draw cost:" + (drawEnd - drawStart) + "ms and isExcept:" + isExcept + "::removeCount:" + removeCount + "::total:" + total);
} catch (Throwable t) {
Log.d("Route","error:" + Log.getStackTraceString(t));
// Log.d("Route","error:" + Log.getStackTraceString(t));
} finally {
try {
if (isExcept) {
@@ -394,7 +394,7 @@ public class RouteOverlayDrawer {
}
}
} catch (Throwable t) {
Log.d("Route", "error2:" + Log.getStackTraceString(t));
// Log.d("Route", "error2:" + Log.getStackTraceString(t));
}
}
}
@@ -431,10 +431,10 @@ public class RouteOverlayDrawer {
// 计算车辆与点之间的夹角
long diffAngle = DrivingDirectionUtils.getDegreeOfCar2Poi2(
car_lon, car_lat, lon, lat, car_head);
Log.d("Route", "isPointOnCarFront: angle->" + diffAngle);
// Log.d("Route", "isPointOnCarFront: angle->" + diffAngle);
return diffAngle;
} finally {
Log.d("Route", "isPointOnCarFront cost:" + (SystemClock.elapsedRealtime() - start) + "ms");
// Log.d("Route", "isPointOnCarFront cost:" + (SystemClock.elapsedRealtime() - start) + "ms");
}
}
}