基于 WebGL 点图元,百度地图 JSAPI GL 提供了 BMapGL.Marker3D 类进行带高度的点覆盖物绘制,支持对覆盖物点的高度、大小、形状、颜色及透明度的自定义,并可以进行纹理贴图以满足更多场景需求。
构造函数:
参数说明:
options属性变量:
创建带高度的点使用BMapGL.Marker3D类,其继承自Overlay,通过map.addoverlay()方法将创建的点覆盖物添加到地图上。
// 创建位置点var point = new BMapGL.Point(116.404, 39.915);// 创建带高度的点var marker3d = new BMapGL.Marker3D(point, 8000, {size: 50,shape: BMAP_SHAPE_CIRCLE,fillColor: '#454399',fillOpacity: 0.6,});// 将点添加到地图上map.addOverlay(marker3d);
纹理图片首先需要通过Icon类创建实例,然后通过Marker3D类创建带高度的点实例时,将得到的Icon实例传给icon属性。
// 创建位置点var pt = new BMapGL.Point(point.lng, point.lat);// 创建贴图纹理Iconvar icon = new BMapGL.Icon(citys[i].img, new BMapGL.Size(40, 40));// 创建带高度的点,这里只需要size和iconvar marker = new BMapGL.Marker3D(pt, 8000, {size: 80,icon: icon,});// 将点添加到地图上map.addOverlay(marker);
上一篇
下一篇
本篇文章对您是否有帮助?