Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.04.2010, 12:51
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Перевести широту/долготу в пиксели на картинке.
Есть карта Москвы (взята из google maps и немного приукрашена), она висит на сайте в виде фона у div-а.



Ещё есть координаты точек-объектов (взяты из google maps).

Задача: отобразить эти точки-объекты на картинке "карта-Москвы".
По сути: как перевести гугло-координаты в пиксели на картинке.

На масштабах города сделать это довольно просто (надо знать координаты одного угла картинки в гугле и знать "цену" одно пикселя, т.е. при перемещении на один пиксель на сколько мы перемещаемся в координатах, делать это надо отдельно по ОХ и OY).
В пределах одного города "не заметно", что на самом деле "цена" пикселя не постоянна, но в масштабах страны - это заметно и такой подход "простенький" использовать нельзя.

Как можно расставить "точки" в больших масштабах?
Ответить с цитированием
  #2 (permalink)  
Старый 16.04.2010, 13:04
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

делай див размером, допустим 3х3(пиксель).
И позиционируй его на карте, туда куда надо.
Если хочешь высчитать широту и долготу, с начало узнай координаты самых самых точек(самую левую, самую правую...верх, низ) и высчитывай исходя из размера картинки на экране.
__________________
.
Ответить с цитированием
  #3 (permalink)  
Старый 16.04.2010, 13:39
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Я и спрашиваю как это сделать.
Ответить с цитированием
  #4 (permalink)  
Старый 16.04.2010, 13:41
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

гугли и ищи какие координаты левого, верхнего, нижнего и правого края твоей карты. И пиши сюда.
__________________
.
Ответить с цитированием
  #5 (permalink)  
Старый 16.04.2010, 14:32
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Да, мы знаем координаты углов картинки ("карта Москвы") на гугло-карте.
Но теперь всё только начинается. Меня интересует преобразование реальных долготы/широты в пиксели на картинке "карты москвы".
Там "сильно-нелинейные" преобразования.
Ответить с цитированием
  #6 (permalink)  
Старый 16.04.2010, 14:46
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Сообщение от Jurasmi Посмотреть сообщение
Меня интересует преобразование реальных долготы/широты в пиксели на картинке
Что значит реальных?

Высчитай разницу между углами и подели на пиксели занимаемые картинкой.
__________________
.
Ответить с цитированием
  #7 (permalink)  
Старый 16.04.2010, 14:48
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Дело в том, что реальные широта/долгота распределяются не линейно на проекции google maps.
Ответить с цитированием
  #8 (permalink)  
Старый 16.04.2010, 14:51
Аспирант
Отправить личное сообщение для Leax Посмотреть профиль Найти все сообщения от Leax
 
Регистрация: 03.06.2009
Сообщений: 67

Jurasmi,
советую искать на геодезических форумах:
преобразование систем координат WGS84 (широта, долгота) в СК42 (X, Y)

Тут еще глянь. Вроде формулы есть.
И учти, что в геодезии ось X направлена на север, а Y - на восток

Последний раз редактировалось Leax, 16.04.2010 в 14:56.
Ответить с цитированием
  #9 (permalink)  
Старый 16.04.2010, 15:08
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Спасибо, пошел учить.
Вопрос открыт.
Ответить с цитированием
  #10 (permalink)  
Старый 16.04.2010, 15:42
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Цитата:
советую искать на геодезических форумах:
преобразование систем координат (широта, долгота) в СК42 (X, Y)
Я не уверен, что google maps использует проекцию WGS84.
Они используют "Mercator projection".

Последний раз редактировалось Jurasmi, 16.04.2010 в 15:45.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск