线
DaxiMap Android SDK 提供根据地图坐标点添加线的功能。
线#
地图上绘制的线是由 Polyline 类定义实现的,线由一组经纬度(DXLatLng对象)点连接而成
具体操作步骤如下:
创建室内的Polyline#
List<DXLatLng> latLngs = new ArrayList<DXLatLng>();
//参数1为纬度 参数2为精度
latLngs.add(new LatLng(39.999391,116.135972));
latLngs.add(new LatLng(39.898323,116.057694));
latLngs.add(new LatLng(39.900430,116.265061));
latLngs.add(new LatLng(39.955192,116.140092));
//**.png为SDK库中的大希图片名称,使用时前缀加上 "DxAppAssets://",如 "DxAppAssets://ble_active.png"
DXPolylineOptions polylineOptions = new DXPolylineOptions();
polylineOptions.addAll(latLngs);
polylineOptions.width(10);
polylineOptions.bdid("B000A11DGP");//建筑的id
polylineOptions.floorId("DX0002250110100001");//线添加在哪一层
polylineOptions.setLineColor("#ef5b9c");//线的颜色
polylineOptions.setOutlineColor("#ef5b9c");//线边框的颜色
polylineOptions.setCustomTexturePath("DxAppAssets://**.png");//线内部的图片 如一张带方向的箭头图片
polylineOptions.transparency(1.0f);//线的透明度
//加入到地图上
DXPolyline polyline = mMap.addPolyline(polylineOptions);
效果如下图
创建室外的Polyline#
List<DXLatLng> latLngs = new ArrayList<DXLatLng>();
latLngs.add(new LatLng(39.999391,116.135972));
latLngs.add(new LatLng(39.898323,116.057694));
latLngs.add(new LatLng(39.900430,116.265061));
latLngs.add(new LatLng(39.955192,116.140092));
DXPolylineOptions polylineOptions = new DXPolylineOptions();
polylineOptions.addAll(latLngs);
polylineOptions.width(10);
polylineOptions.setLineColor("#ef5b9c");
polylineOptions.setOutlineColor("#ef5b9c");
polylineOptions.transparency(1.0f);
polylineOptions.setCustomTexturePath("DxAppAssets://**.png");//线内部的图片 如一张带方向的箭头图片
//其他配置同室内添加 室外无需设置 floorId与bdid
//加入到地图上
DXPolyline polyline = mMap.addPolyline(polylineOptions);
上面的代码定义该折线的颜色为黑色,宽度为 10 像素,效果如下图
删除Polyline#
示例如下
mMap.removeFeature(polyline);