Here是用于绘制线几何的mapBox示例。
private void onStyleLoaded(Style style) {
initRouteCoordinates();
style.addSource(new GeoJsonSource("line-source",FeatureCollection.fromFeatures(new Feature[]{
Feature.fromGeometry(Linestring.fromLngLats(routeCoordinates))})));
style.addLayer(new LineLayer("lineLayer","line-source")
.withProperties(PropertyFactory.lineDasharray(new Float[] {0.01f,2f}),PropertyFactory.lineCap(Property.LINE_CAP_ROUND),PropertyFactory.lineJoin(Property.LINE_JOIN_ROUND),PropertyFactory.lineWidth(5f),PropertyFactory.lineColor(Color.parseColor("#e55e5e"))));
Point point = routeCoordinates.get(0);
mapboxMap.animateCamera(CameraUpdateFactory.newLatLngzoom(
new LatLng(point.latitude(),point.longitude()),17));
}
我需要添加更多点并更新线。如您在示例中所见,在构建时将线几何指定给源层。我以后找不到任何将点添加到当前行的api。
我应该删除这一行并重画一条新线吗?有没有更好的方法?