一、继承Overlay
class Polygon extends Overlay
二、重写Overlay中的draw函数
1、投影转换
public Point ChangeProjection(GeoPoint geoPoint){
Projection projection = mv.getProjection();
Point screenPoint = new Point();
projection.toPixels(geoPoint, screenPoint);
return screenPoint;
}
2、设置画笔
Paint paint = new Paint();
(1)设置颜色
paint.setColor(Color.RED);
(2)设置笔形
paint.setSytle(Paint.Style.FILL); //设置实心
(3)设置画笔粗细
paint.setStrokeWidth(3);
3、设置路径
Path path = new Path();
path.moveTo(ChangeProjection(point1).x,ChangeProjection(point1).y);
path.lineTo(ChangeProjection(point2).x,ChangeProjection(point2).y);
path.lineTo(ChangeProjection(point3).x,ChangeProjection(point3).y);
path.close(); //闭合多边形
4、在画布上绘制图形
canvas.drawPath(path,paint);
三、在主Activity中实现Ploygon
Polygon shape = new Polygon();
mv.getOverlays.add(shape);
主要代码如下:


运行结果:

本文详细介绍了如何在Android GoogleMap地图上显示多边形,包括继承Overlay类、重写draw函数进行投影转换、设置画笔和路径等关键步骤,并在主Activity中实现Polygon类。通过本教程,开发者可以轻松掌握在地图上绘制多边形的技术。
36

被折叠的 条评论
为什么被折叠?



