Преобразовать широту / долготу в пиксельные местоположения - PullRequest
3 голосов
/ 12 августа 2010

У меня есть карта (Меркатор) и координаты 4 углов карты. Мне нужно что-то придумать, чтобы я мог преобразовать данные координаты в соответствующие точки на карте. Я не могу использовать Google или что-то в этом роде, поэтому мне нужно сделать это в первую очередь.

Языки, которые я могу использовать, будут либо PHP, либо Javascript. Я пробовал некоторые вещи, которые я нашел в других сообщениях, таких как этот: Расчет долготы и широты Меркатора по x и y на обрезанной карте (Великобритании) , но мне не повезло с ними

Если кто-нибудь может предложить некоторую помощь, я был бы очень благодарен. Я ужасно разбираюсь в математике и, глядя на некоторые из этих уравнений, это начинает ощущаться вне моей лиги, но я должен это сделать.

Еще раз, спасибо заранее.

Ответы [ 2 ]

1 голос
/ 12 августа 2010
   function convert_coords($lat, $lon)
     {
   $width = 1281;
   $height = 1529;
// X and Y boundaries
$westLong = -75.196438;
$eastLong = -74.674072;
$northLat = 41.377581;
$southLat = 40.909232;

$lat = $lat;
$lon = $lon;

 $x = $width * (($westLong-$lon)/($westLong-$eastLong));
 $y = ($height * (($northLat-$lat)/($northLat-$southLat)));

    echo $x."<br />";
    echo $y;

}

Это то, что я пытался заставить работать.Я думаю, что это вариация того, что я сделал, но это не дает мне результатов, которые мне нужны.Я действительно столкнулся с кирпичной стеной с этим плохо.И нет никакого способа на земле, я собираюсь выяснить здесь математику самостоятельно, я пытался, и это выход из моей лиги.

0 голосов
/ 25 декабря 2010

звучит так, будто вы работаете в JavaScript, и в этом случае стоит взглянуть на библиотеку с открытым исходным кодом proj4js.

Кроме того, если ваше растровое изображение ортогонально системе координат, то вы можете взятьMercator forumla (см. Википедию или любую книгу по возражениям на половину приличной карты) примените простое линейное преобразование, чтобы получить необходимое преобразование.Затем решите за четыре угла.для линейного преобразования вы найдете, что некоторые переменные просто дублируют параметры в проекции Меркатора (т.е. коэффициенты масштабирования)

...