先采用纯色绘制引导线

This commit is contained in:
董宏宇
2020-10-29 15:57:31 +08:00
parent 1b0f5b4cd6
commit 79fbc2d1b4
12 changed files with 1559 additions and 20 deletions

View File

@@ -44,32 +44,41 @@ public class V2XPushVRNiXiangEventMarker implements IV2XMarker<V2XPushMessageEnt
if (mMogoPolyline != null) {
mMogoPolyline.remove();
}
// 道路事件
MogoMarkerOptions optionsRipple = new MogoMarkerOptions()
.object(entity)
.latitude(entity.getLat())
.longitude(entity.getLon());
optionsRipple.anchor(0.5f, 0.5f);
optionsRipple.icon(V2XMarkerAdapter.getV2XVRRoadEventViewPng(entity));
mAlarmInfoMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_EVENT_ALARM_POI, optionsRipple);
List<MogoLatLng> points = new ArrayList<>();
for (double[] doubles : entity.getMoveTrack()) {
points.add(new MogoLatLng(doubles[1], doubles[0]));
}
mAlarmInfoMarker.startSmooth(points, 10);
drawableEventMarker(entity);
// 绘制引导线
drawablePloyLine(entity);
drawableRecommendPolyline(entity);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 绘制事件点
*
* @param entity
*/
void drawableEventMarker(V2XPushMessageEntity entity) {
// 道路事件
MogoMarkerOptions optionsRipple = new MogoMarkerOptions()
.object(entity)
.latitude(entity.getLat())
.longitude(entity.getLon());
optionsRipple.anchor(0.5f, 0.5f);
optionsRipple.icon(V2XMarkerAdapter.getV2XVRRoadEventViewPng(entity));
mAlarmInfoMarker = V2XServiceManager.getMarkerManager().addMarker(V2X_EVENT_ALARM_POI, optionsRipple);
List<MogoLatLng> points = new ArrayList<>();
for (double[] doubles : entity.getMoveTrack()) {
points.add(new MogoLatLng(doubles[1], doubles[0]));
}
mAlarmInfoMarker.startSmooth(points, 10);
}
/**
* 绘制引导线
*
@@ -86,7 +95,7 @@ public class V2XPushVRNiXiangEventMarker implements IV2XMarker<V2XPushMessageEnt
colors.add(0xFFFA8C34);
// 线条粗细,渐变,渐变色值
options.width(15).useGradient(true).colorValues(colors);
options.width(15).useGradient(true).color(0xFFFA8C34);
for (double[] doubles : entity.getPolyline()) {
options.add(doubles[0], doubles[1]);
@@ -96,6 +105,32 @@ public class V2XPushVRNiXiangEventMarker implements IV2XMarker<V2XPushMessageEnt
mMogoPolyline = V2XServiceManager.getMogoOverlayManager().addPolyline(options);
}
/**
* 绘制推荐引导线
*
* @param entity
*/
void drawableRecommendPolyline(V2XPushMessageEntity entity) {
// 连接线参数
MogoPolylineOptions options = new MogoPolylineOptions();
// 渐变色
List<Integer> colors = new ArrayList<>();
colors.add(0xFFF95959);
colors.add(0xFF942B48);
colors.add(0xFFCB253A);
// 线条粗细,渐变,渐变色值
options.width(15).useGradient(true).color(0xFFCB253A);
for (double[] doubles : entity.getRecommendPolyline()) {
options.add(doubles[0], doubles[1]);
}
// 绘制线的对象
mMogoPolyline = V2XServiceManager.getMogoOverlayManager().addPolyline(options);
}
@Override
public void clearPOI() {
// 锁车就是将地图视图移植中心点,因为行驶中的车和地图要相对的跟随