Bing 在多边形上映射 tryPixelToLocation

Bing Maps tryPixelToLocation on Polygon

我试图通过让用户点击地图来创建一个凹多边形。我可以很好地创建凸多边形。但是,当我尝试创建凹多边形时,我必须单击多边形本身,出现以下错误:

e.target.tryPixelToLocation is not a function

请允许我进一步详细说明。用户在地图上单击,然后在地图上放置一个图钉以显示他们刚刚单击的位置。他们又点击了两次,现在他们在地图上绘制了一个三角形。当他们试图在该三角形内部单击以绘制第四个点,创建一个凹多边形时,他们会收到上述错误。

我使用的代码如下

function GetMap(sender, args) {
    map = new Microsoft.Maps.Map(document.getElementById("mapDiv"), {
        credentials: "XXXXX",
        enableSearchLogo: false,
        enableClickableLogo: false,
        disableBirdseye: true
    });
    map.setView({
        zoom: 17,
        center: new Microsoft.Maps.Location($('#startLatitude').val(), $('#startLongitude').val()),
        mapTypeId: Microsoft.Maps.MapTypeId.aerial,
        labelOverlay: Microsoft.Maps.LabelOverlay.visible
    });
    Microsoft.Maps.Events.addHandler(map, 'click', getUserClick);
}

function getUserClick(e) {
    alert(e.targetType); // <--- When this is 'Polygon' we get the error 
    if (e.mouseMoved === false && e.isPrimary === true) {
        var p = new Microsoft.Maps.Point(e.getX(), e.getY());
        var t = e.target.tryPixelToLocation(p);
        var l = new Microsoft.Maps.Location(t.latitude, t.longitude);

        // Clear and draw polygon with new point //                  
    }
}

targetType是多边形时,如何获取点击的latitude/longitude?

当点击事件发生在多边形 class 上时使用 map.tryPixelToLocation 因为多边形 class 没有那个功能。