android地图sdk | 百度地图api sdk-凯发k8官方旗舰厅

浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
绘制弧线和面
下载开发文档

本章节将对绘制弧线、绘制圆以及多边形进行说明。

绘制弧线

弧线由arc类定义,一条弧线由起点、中点和终点三个点确定位置。开发者可以通过arcoptions类设置弧线的位置,宽度和颜色。
示例代码如下:

// 添加弧线坐标数据
latlng p1 =newlatlng(39.97923,116.357428);//起点
latlng p2 =newlatlng(39.94923,116.397428);//中间点
latlng p3 =newlatlng(39.97923,116.437428);//终点
//构造arcoptions对象
overlayoptions marcoptions =newarcoptions()
.color(color.red)
.width(10)
.points(p1, p2, p3);
//在地图上显示弧线
overlay marc = mbaidumap.addoverlay(marcoptions);

绘制效果如图:

绘制弧线
绘制圆

圆由circle类定义,开发者可以通过circleoptions类设置圆心位置、半径(米)、边框以及填充颜色。
示例代码如下:

//圆心位置
latlng center =newlatlng(39.90923,116.447428);
//构造circleoptions对象
circleoptions mcircleoptions =newcircleoptions().center(center)
.radius(1400)
.fillcolor(0xaa0000ff)//填充颜色
.stroke(newstroke(5,0xaa00ff00));//边框宽和边框颜色
//在地图上显示圆
overlay mcircle = mbaidumap.addoverlay(mcircleoptions);

绘制效果如图:

绘制圆
绘制渐变圆

自v7.5.4 起,地图sdk支持绘制渐变圆。
渐变圆由circle类定义,但不支持设置填充色和区域内镂空。开发者可以通过circleoptions类设置圆心位置、半径(米)、边框以及渐变色。
具体设置如下:

latlng llcirclec =newlatlng(39.915,116.404);
overlayoptions oocircle =newcircleoptions()
.center(llcirclec)// 设置圆心坐标
.setisgradientcircle(true)
.setcentercolor(color.argb(0,93,232,204))
.setsidecolor(color.rgb(93,232,204))
.stroke(newstroke(2,color.rgb(93,232,204)))// 设置圆边框信息
.radius(5000);// 圆半径,单位:米
mgradientcircle =(circle) mbaidumap.addoverlay(oocircle);

注:渐变圆遵循以下规则:

1.0~ radiusweight * radius) 该部分颜色从 centercolor 渐变至 colorweight *(sidecolor - centercolor)
2. (radiusweight * radius ~ radius)该部分间颜色从 centercolor colorweight *(sidecolor - centercolor) 渐变至 sidecolor

渐变圆效果如下:

渐变圆
绘制多边形

多边形由polygon类定义。开发者可以通过polygonoptions来设置多边形的位置、边框和填充颜色。一个多边形是一组latlng点按照传入顺序连接而成的封闭图形。
示例代码如下:

//多边形顶点位置
list<latlng> points =newarraylist<>();
points.add(newlatlng(39.93923,116.357428));
points.add(newlatlng(39.91923,116.327428));
points.add(newlatlng(39.89923,116.347428));
points.add(newlatlng(39.89923,116.367428));
points.add(newlatlng(39.91923,116.387428));
//构造polygonoptions
polygonoptions mpolygonoptions =newpolygonoptions()
.points(points)
.fillcolor(0xaaffff00)//填充颜色
.stroke(newstroke(5,0xaa00ff00));//边框宽度和颜色
//在地图上显示多边形
mbaidumap.addoverlay(mpolygonoptions);

绘制效果如图:

上一篇

绘制线

下一篇

添加文字和信息窗

本篇文章对您是否有帮助?

网站地图