代码之家  ›  专栏  ›  技术社区  ›  user740022

从Microsoft填充多边形。地图。Bing地图上的WellKnownText[WKT]

  •  2
  • user740022  · 技术社区  · 6 年前

    我正试图用下面的代码在Bing地图上填充多边形。但它根本不会在地图上绘制多边形。请检查下面的代码,让我知道我遗漏了什么?

    请注意我出于安全目的设置xxxx的凭据。

    谢谢

    <!DOCTYPE html>
    <html>
    <head>
    
    <title>binaryOperationsHTML</title>
    
    <meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
    
    <script type='text/javascript'>
        var map;
        var polygon;
        function loadMapScenario() {
            map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
                /* No need to set credentials if already passed in URL */
                center: new Microsoft.Maps.Location(33.146190241986119,  -86.482209833117281),
                zoom: 7 });
    
    
            //Load the Well Known Text module.
            Microsoft.Maps.loadModule('Microsoft.Maps.WellKnownText', function  () {
                //Parse well known text string.
                polygon = Microsoft.Maps.WellKnownText.read('POLYGON((-122.358  47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))');
    
                //Add parsed shape to the map.
                map.entities.push(polygon);
    
            });
    
        }
    
    
    </script>
    </head>
    <body>
    <div id='printoutPanel'></div>
    
    <div id='myMap' style='width: 100vw; height: 100vh;'></div>
    
    <script type='text/javascript' src='https://www.bing.com/api/maps/mapcontrol?key=xxxx&callback=loadMapScenario' async defer></script>
    </body>
    </html>
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   rbrundritt    6 年前

    您的代码运行良好,确实向地图添加了多边形。我认为问题在于,您将初始地图中心设置为距离多边形很远的位置,因此多边形不在视图中,您必须平移/缩放才能找到它。尝试使用此中心值:

    center: new Microsoft.Maps.Location(47.65,  -122.4)