Статический API Карт Google - Получите SW и NE по координатам центра
m загрузка листов карты из Google Maps с использованием Static Maps с использованием .NET.
Проблема яу меня есть то, что я нене знаю, какие координаты SW и NE у возвращенного изображения.
Мы нашли много разных примеров кода, формул, но все они кажутся ошибочными. Это тот, который получил ближе всего к правильному ответу. Когда я ввел координаты в Google Maps, это показало, что это было немного выключено.
var result = GoogleMapsAPI.GetBounds(new Coordinate(4.79635, 51.15479), 20, 512, 512);
public static class GoogleMapsAPI
{
public static MapCoordinates GetBounds(Coordinate center, int zoom, int mapWidth, int mapHeight)
{
var scale = Math.Pow(2, zoom);
var SWPoint = new Coordinate(center.X - (mapWidth / 2) / scale, center.Y - (mapHeight / 2) / scale);
var NEPoint = new Coordinate(center.X + (mapWidth / 2) / scale, center.Y + (mapHeight / 2) / scale);
return new MapCoordinates() { SouthWest = SWPoint, NorthEast = NEPoint };
}
}
public class MapCoordinates
{
public Coordinate SouthWest { get; set; }
public Coordinate NorthEast { get; set; }
}
public class Coordinate
{
public double Latitude { get; set; }
public double Longitude { get; set; }
public double X { get { return Latitude; } set { Latitude = value; } }
public double Y { get { return Longitude; } set { Longitude = value; } }
public Coordinate(double lat, double lng)
{
Latitude = lat;
Longitude = lng;
}
public override string ToString()
{
return X.ToString() + ", " + Y.ToString();
}
}
Источники:
Как получить границы статической карты Google?
http://www.easywms.com/easywms/?q=zh-hans/node/3612
Загруженное изображение по центральной координате:
http://maps.googleapis.com/maps/api/staticmap?center=51.15479,4.79635&масштабирование = 20 &размер = 512x512 &Датчик = ложь