AMap.PolyEditor如何删除锚点移动锚点
时间: 2023-06-11 16:04:48 浏览: 379
AMap.PolyEditor可以通过以下两种方式删除锚点和移动锚点:
1. 删除锚点:使用AMap.PolyEditor的removeMarker方法来删除指定的锚点。示例代码如下:
```
var polyeditor = new AMap.PolyEditor(map, polygon);
// 删除第一个锚点
polyeditor.removeMarker(polygon.getPath()[0]);
```
2. 移动锚点:使用AMap.PolyEditor的moveMarker方法来移动指定的锚点。示例代码如下:
```
var polyeditor = new AMap.PolyEditor(map, polygon);
// 移动第一个锚点到新的位置
var newPosition = new AMap.LngLat(116.400705, 39.916485);
polyeditor.moveMarker(polygon.getPath()[0], newPosition);
```
注意:在使用AMap.PolyEditor进行锚点删除和移动操作时,需要先创建AMap.PolyEditor对象,并将其与对应的多边形对象绑定,示例中的polygon是一个多边形对象。
相关问题
AMap.Polyline画线添加锚点可以编辑
吗?
您好!关于您的问题,AMap.Polyline 是高德地图的一个绘制折线类,是通过一组经纬度坐标将折线逐段绘制出来的。如果想要在折线上添加锚点并进行编辑,可以使用 AMap.PolyEditor 类来实现。该类可以调用 setTarget 方法来设置编辑目标,并支持添加和删除锚点、移动锚点等编辑操作。希望这能对您有所帮助!
// 将自定义Marker的View转换为Bitmap Bitmap customMarkerBitmap = createBitmapFromView(customMarkerView); // 创建自定义Marker的BitmapDescriptor对象 BitmapDescriptor customMarkerIcon = BitmapDescriptorFactory.fromBitmap(customMarkerBitmap); // 在地图上添加自定义Marker Marker marker1 = aMap.addMarker(new MarkerOptions() .position(p1) .icon(customMarkerIcon) .anchor(0.5f, 0.5f)); // 自定义途经点的Marker样式 Marker marker2 = aMap.addMarker(new MarkerOptions() .position(p2) .icon(customMarkerIcon) .anchor(0.5f, 0.5f)); // 自定义途经点的Marker样式 Marker marker3 = aMap.addMarker(new MarkerOptions() .position(p3) .icon(customMarkerIcon) .anchor(0.5f, 0.5f)); // 自定义途经点的Marker样式 // 将Marker对象添加到维护途经点的列表中 wayPoints.add(marker1); wayPoints.add(marker2); wayPoints.add(marker3); 我自己写的Marker怎么完全覆盖在途经点上方
如果你的自定义Marker完全覆盖在途经点上方,可能是因为你在创建Marker时没有设置适当的锚点(anchor)。锚点的作用是指定Marker的哪个点与指定位置对齐,默认情况下是Marker的底部中心点(anchor为(0.5f, 1.0f))与指定位置对齐。如果你的自定义Marker底部中心点和途经点的位置相同,那么就会完全覆盖在途经点上方。你可以尝试修改锚点的值,使其与你自定义Marker的底部中心点对齐。
例如,如果你的自定义Marker的底部中心点和途经点的位置相同,可以将锚点设置为(0.5f, 0.0f),这样Marker的顶部中心点就会和途经点的位置对齐。代码如下:
```
Marker marker1 = aMap.addMarker(new MarkerOptions()
.position(p1)
.icon(customMarkerIcon)
.anchor(0.5f, 0.0f));
```
你可以根据自己的实际情况调整锚点的值,使得自定义Marker能够正确地显示在途经点上方。
阅读全文