c # Как преобразовать широту и долготу в плоскость xy на увеличенной карте - PullRequest
0 голосов
/ 04 мая 2019

У меня есть карта, которая не является картой GOOGLE в картинке.Я знаю ширину и высоту карты.И я знаю широту и долготу краев изображения карты.Изображение карты показывает только небольшую область (некоторые здания и улицы), а не весь МИР.То, что я хочу сделать, это получить координаты XY изображения карты, если у меня есть точка некоторой точки.Точка не будет вне изображения карты.

Короче говоря, основной задачей было бы преобразование координат из широты и долготы в координаты ху, если бы я знал, что ребра и широты.

1 Ответ

0 голосов
/ 04 мая 2019
// The mapping between latitude, longitude and pixels is defined by the web
// mercator projection.
function project(latLng) {
   var siny = Math.sin(latLng.lat() * Math.PI / 180);

   // Truncating to 0.9999 effectively limits latitude to 89.189. This is
   // about a third of a tile past the edge of the world tile.
   siny = Math.min(Math.max(siny, -0.9999), 0.9999);

   return new google.maps.Point(
      TILE_SIZE * (0.5 + latLng.lng() / 360),
      TILE_SIZE * (0.5 - Math.log((1 + siny) / (1 - siny)) / (4 * Math.PI)));
}

от https://developers.google.com/maps/documentation/javascript/examples/map-coordinates?csw=1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...