使用Bing Map Api生成的地图的图像质量很难

时间:2013-03-01 14:48:38

标签: map localization geolocation bing-maps bing-api

我正在开发一个应用程序,从我的webService开始,用[Bing Api]检索“Bing Maps”的图像。 我的问题是渲染图像。 如果我将缩放设置为大于11,或者如果我设置的尺寸太大,则恢复我的图片的结果就像“剪切”成几个加载并给出了印象图像没有完全下载。

下面的示例图片

您知道为什么图像看起来像背面一样吗?

这是我在webService中使用的代码。

    //call function 
    GetImageMap(46,6,800,800,17);

    //Get Bing map Image from the web
    public string GetImageMap(double latitude,double longitude,int mapSizeHeight, int mapSizeWidth, int zoomLevel)
    {
        string key = "asoidfz9aos78fa9w3hf9w3fh9hf7ha9wfw37fhblablablablablabla";
        MapUriRequest mapUriRequest = new MapUriRequest();

        // Set credentials using a valid Bing Maps key
        mapUriRequest.Credentials = new ImageryService.Credentials();
        mapUriRequest.Credentials.ApplicationId = key;

        // Set the location of the requested image
        mapUriRequest.Center = new ImageryService.Location();
        mapUriRequest.Center.Latitude = latitude;
        mapUriRequest.Center.Longitude = longitude;

        // Set the map style and zoom level
        MapUriOptions mapUriOptions = new MapUriOptions();
        mapUriOptions.Style = MapStyle.Aerial;
        mapUriOptions.ZoomLevel = zoomLevel;
        mapUriOptions.PreventIconCollision = true;
        // Set the size of the requested image in pixels
        mapUriOptions.ImageSize = new ImageryService.SizeOfint();
        mapUriOptions.ImageSize.Height = mapSizeHeight;
        mapUriOptions.ImageSize.Width = mapSizeWidth;

        mapUriRequest.Options = mapUriOptions;

        //Make the request and return the URI
        ImageryServiceClient imageryService = new ImageryServiceClient();
        MapUriResponse mapUriResponse = imageryService.GetMapUri(mapUriRequest);
        return mapUriResponse.Uri;
    }
    // ### END Function getImageMap

并且网址查询:

http://api.tiles.virtualearth.net/api/GetMap.ashx?c=46,6&dcl=1&w=800&h=800&b=a,mkt.en-US&z=17&token={token}

结果图片..: enter image description here

1 个答案:

答案 0 :(得分:1)

它似乎与航拍图像有关,而且与技术无关。 我会将其报告给相应的团队。

顺便说一句,您应该使用REST Imagery API,这是使用Bing图像的官方方式,请参阅MSDN:

http://msdn.microsoft.com/en-us/library/ff701724.aspx

以下是基于您的示例的示例网址:

http://dev.virtualearth.net/REST/v1/Imagery/Map/Aerial/46,6/17?mapSize=800,800&key=YOURKEY