您现在的位置:

绘制线和面

画线功能

为什么要在地图上画线?因为要把在地图上打点的标识连接起来,用以表明那些标识点是相关的一类标识点。 实现方法:得到一个画笔,得到相关的位置标识点,然后在相关的位置标识点之间画线。

                (完整代码详见相关资源下载中示例工程的 OverlayLineActivity.java)
                // 线
                PolylineOverlay pl1 = new PolylineOverlay(new Point[] {
                    new Point(11638048, 3996816),
                    new Point(11640672, 3997696) 
                }, false);                                          // 绘制线,并将传入点顺序连接
                pl1.setColor(0xffaa0000);                           // 为线设置颜色
                pl1.setStrokeStyle(Overlay.StrokeStyle.solid);      // 设置线型
                pl1.setWidth(5.0f);                                 // 设置线宽
                mRenderer.addOverlay(pl1);                          // 在地图上绘制一条线
            

画圆功能

为什么要在地图上画圈?因为要侧重的标识在地图上打点的标识点,用以凸显出你需要特别标识的标识点。 实现方法:得到一个画笔,得到相关的位置标识点,然后在相关的位置标识点上画圆。

                (完整代码详见相关资源下载中示例工程的 OverlaySurfaceActivity.java)
                // 圆
                CircleOverlay circle2 = new CircleOverlay(new Point(11639580, 3997676), 400f);  // 创建一个圆,半径为400单位
                circle2.setColor(Color.BLUE);                                                   // 颜色
                circle2.setLayer(1);                                                            // 显示层次
                mRenderer.addOverlay(circle2);                                                  // 在地图上创建一个圆形
            

画面功能

为什么要在地图上画面?因为要侧重的标识在地图上的一片区域,用以凸显出你需要特别标识的区域。 实现方法:得到一个画笔,得到相关的位置标识点,然后将相关的位置标识点上闭合连线,并为此片区域着色后绘制成面。

                (完整代码详见相关资源下载中示例工程的 OverlaySurfaceActivity.java)
                // 面
                PolylineOverlay pl2 = new PolylineOverlay(new Point[] {
                    new Point(11638832, 3999840),
                    new Point(11637952, 3999104),
                    new Point(11639376, 3998576) 
                }, true);                                       // 绘制面,将传入点顺序连接,并且闭合起终点
                pl2.setColor(0xffaa0000);                       // 为面设置颜色
                pl2.setStrokeStyle(Overlay.StrokeStyle.l63);    // 设置线型
                pl2.setWidth(10.0f);                            // 设置线宽
                mRenderer.addOverlay(pl2);                      // 在地图上创建面
            

画多边形功能

为什么要在地图上画多边形?因为要把在地图上打点的标识连接起来,并设置为相应颜色,用以表明这些相关点标识出的一片区域。 实现方法:得到一个画笔,得到相关区域的一组位置标识点,然后将相关位置标识点之间连线,形成一个闭合区域。

                (完整代码详见相关资源下载中示例工程的 OverlaySurfaceActivity.java)
                // 多边形 透明
                Point[] points = new Point[] {
                    new Point(11639600, 3998500),
                    new Point(11639620, 3998500),
                    new Point(11639640, 3998600),
                    new Point(11639660, 3998500),
                    new Point(11639680, 3998600),
                    new Point(11639700, 3998500),
                    new Point(11639720, 3998500),
                    new Point(11639680, 3998650),
                    new Point(11639640, 3998650) 
                };
                PolygonOverlay polygonOverlay = new PolygonOverlay(points);     // 创建用多点points组成的多边形
                polygonOverlay.setColor(0xaaffff00);                            // 为多边形设置颜色
                mRenderer.addOverlay(polygonOverlay);                           // 在地图上绘制多边形
            

地图上透明多边形的展示效果:

地图上透明多边形的展示效果
返回顶部