在Google Map V3中,如何在多边形内部和上方放置标签?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Google Map V3中,如何在多边形内部和上方放置标签?相关的知识,希望对你有一定的参考价值。

在Google Map V3中,如何在多边形内部和上方放置标签?在V2中没有标签覆盖当我使用库maplabel时,即使我指定了更高的Z-index,我也可以将文本放在里面,但不在上面。谢谢菲尔

答案

现在为时已晚,但我遇到了同样的问题,这段代码工作正常!

var triangleCoords = [
    { lat:30.655993, lng: 76.732375 },
    { lat: 30.651379, lng: 76.735808},
    { lat: 30.653456, lng: 76.729682}
]

var bermudaTriangle = new google.maps.Polygon({
    paths: triangleCoords ,
    strokeColor: '#FF0000',
    strokeOpacity: 0.8,
    strokeWeight: 2,
    fillColor: '#FF0000',
    fillOpacity: 0.35
});
attachPolygonInfoWindow(bermudaTriangle)

function attachPolygonInfoWindow(polygon) {
    var infoWindow = new google.maps.InfoWindow();
    google.maps.event.addListener(polygon, 'mouseover', function (e) {
        infoWindow.setContent("Polygon Name");
        var latLng = e.latLng;
        infoWindow.setPosition(latLng);
        infoWindow.open(map);
    });
}
另一答案

maplabel在mapPane中的画布上渲染其文本,该画布通常呈现在floatPane中的所有zIndex值之下。要将mapPane画布放入zIndex顺序,请尝试:

var mapLabel = new MapLabel({
    position: new google.maps.LatLng(yourLat, yourLng),
    text: 'test',
    zIndex: 101} );
$(mapLabel.getPanes().mapPane).css('z-index', mapLabel.zIndex);
另一答案

使用google-maps-utility-library

设置标签内容,找到你的多边形的center position,那就是:)

var labelOptions = {
    content: label,
    boxStyle: {
      textAlign: "center",
      fontSize: "8pt",
      width: "50px"
    },
    disableAutoPan: true,
    pixelOffset: new google.maps.Size(-25, 0),
    position: this.my_getBounds(gpoints).getCenter(),
    closeBoxURL: "",
    isHidden: false,
    pane: "mapPane",
    enableEventPropagation: true
};

var polygonLabel = new InfoBox(labelOptions);
polygonLabel.open(map);

以上是关于在Google Map V3中,如何在多边形内部和上方放置标签?的主要内容,如果未能解决你的问题,请参考以下文章

Google Map API Javascript v3-如何在多边形/矩形区域内突出显示特定街道/街道段?

google maps API v3 - 如何绘制动态多边形/折线?

Google MAPS API V3 --> 如何显示存储在我的 MYSQL 表中的所有多边形?

在 Google Maps API v3 中缩放到 geojson 多边形边界

Google Maps v3 - 删除多边形上的顶点

Google Map API V3:如何将自定义数据添加到标记