开发 HarmonyOS NEXT 地图SDK 开发指南 在地图上绘制 绘制面

绘制面 最后更新时间: 2024年11月21日

地图上的面分为圆形和多边形两种

绘制圆

圆形由 Circle 类定义实现,构造一个圆形需要确定它的圆心和半径,具体的示例代码如下:

let circleOptions: CircleOptions = new CircleOptions();
    circleOptions.setRadius(15000); //设置圆的半径,单位:米
    circleOptions.setCenter(new LatLng(39.996441, 116.411146)); //设置圆心经纬度坐标
    circleOptions.setFillColor(0xffff0000); //设置圆的填充颜色
    circleOptions.setStrokeColor(0xff00ff00); //设置圆的边框颜色

    let circleHoleOptions: CircleHoleOptions = new CircleHoleOptions();
    circleHoleOptions.setRadius(5000);
    circleHoleOptions.setCenter(new LatLng(39.996441, 116.411146));
    circleOptions.addHoles(circleHoleOptions); //添加空心洞的配置项
    aMap.addCircle(circleOptions)

绘制多边形

多边形是由 Polygon 类定义的一组在地图上的封闭线段组成的图形,它由一组 LatLng 点按照传入顺序连接而成的封闭图形。与绘制线类似,面的属性操作集中在 PolygonOptions 中。

let polygonOptions: PolygonOptions = new PolygonOptions();
polygonOptions.add(new LatLng(39.781892, 116.293413));
polygonOptions.add(new LatLng(39.787600, 116.391842));
polygonOptions.add(new LatLng(39.733187, 116.417932));
polygonOptions.add(new LatLng(39.704653, 116.338255));
polygonOptions.setFillColor(0xFFFF0000);

let polygonHoleOptions: PolygonHoleOptions = new PolygonHoleOptions;
polygonHoleOptions.add(new LatLng(39.781892 - 0.02, 116.293413 + 0.02));
polygonHoleOptions.add(new LatLng(39.787600 - 0.02, 116.391842 - 0.02));
polygonHoleOptions.add(new LatLng(39.733187 + 0.02, 116.417932 - 0.02));
polygonHoleOptions.add(new LatLng(39.704653 + 0.02, 116.338255 + 0.02));
let list: ArrayList<PolygonHoleOptions> = new ArrayList();
list.add(polygonHoleOptions);
polygonOptions.setHoleOptions(list);
aMap.addPolygon(polygonOptions);

本页目录
返回顶部 示例中心 常见问题 智能客服 公众号
二维码