Географические координаты в прямоугольные
-
- Участник
- Сообщения: 70
- Зарегистрирован: 04 сен 2009, 16:47
- Репутация: 1
Географические координаты в прямоугольные
Доброго времени суток. Подскажите пожалуйста как имея географические координаты получить X и Y. У меня есть карта мира. Заранее спасибо
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Географические координаты в прямоугольные
а в какой системе координат?
-
- Участник
- Сообщения: 70
- Зарегистрирован: 04 сен 2009, 16:47
- Репутация: 1
Re: Географические координаты в прямоугольные
У меня карта имеет Geographic Coordinate System: GCS_WGS_1984.
Мне необходимо пересчитывать и географических координат в X Y,
чтобы программа корректно ставила точки
Мне необходимо пересчитывать и географических координат в X Y,
чтобы программа корректно ставила точки
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Географические координаты в прямоугольные
нужно определиться, в какой СК вы хотите получить прямоугольные координаты. После этого берем любую ГИС, перепроецируем карту в нужную нам СК (семейство систем координат с метрами, а не с градусами называется спроецированными СК) и снимаем координаты
ин гроссен фамилен нихт клювен клац клац
-
- Гуру
- Сообщения: 977
- Зарегистрирован: 27 янв 2009, 22:57
- Репутация: 258
Re: Географические координаты в прямоугольные
Например перевод из Longitude / Latitude (WGS 84) (EPSG: 4326) в Mercator WGS84 Meters
Где Math.PI - число PI=3.141592653589793238462
Код: Выделить всё
forwardMercator: function(lon, lat) {
var x = lon * 20037508.34 / 180;
var y = Math.log(Math.tan((90 + lat) * Math.PI / 360)) / (Math.PI / 180);
y = y * 20037508.34 / 180;
return new OpenLayers.LonLat(x, y);
},
-
- Участник
- Сообщения: 70
- Зарегистрирован: 04 сен 2009, 16:47
- Репутация: 1
Re: Географические координаты в прямоугольные
Позвольте уточнить. Начал использовать этот код
Точка ставиться в другой галактике. Думал результат x и y в метрах нужно перевести в км (/1000). Точка ставиться поближе к Земле но еще не на ней. Помогите сняться с ручника. Спасибо
Код: Выделить всё
forwardMercator: function(lon, lat) {
var x = lon * 20037508.34 / 180;
var y = Math.log(Math.tan((90 + lat) * Math.PI / 360)) / (Math.PI / 180);
y = y * 20037508.34 / 180;
return new OpenLayers.LonLat(x, y);
},
-
- Гуру
- Сообщения: 977
- Зарегистрирован: 27 янв 2009, 22:57
- Репутация: 258
Re: Географические координаты в прямоугольные
Пример моего текста:
SET DECIMALS TO 18
pipi=3.141592653589793238462
M.Long = M.Long * 20037508.34/180
M.Lat = log(tan((90 + M.Lat) * pipi / 360)) / (pipi / 180)
M.Lat = M.Lat * 20037508.34 / 180
Пример конвертации (в метры):
Lat=54,766910 __________ 7316758,84 (метры)
Long= 32,019500 __________ 3564394,43 (метры)
SET DECIMALS TO 18
pipi=3.141592653589793238462
M.Long = M.Long * 20037508.34/180
M.Lat = log(tan((90 + M.Lat) * pipi / 360)) / (pipi / 180)
M.Lat = M.Lat * 20037508.34 / 180
Пример конвертации (в метры):
Lat=54,766910 __________ 7316758,84 (метры)
Long= 32,019500 __________ 3564394,43 (метры)
-
- Участник
- Сообщения: 70
- Зарегистрирован: 04 сен 2009, 16:47
- Репутация: 1
Re: Географические координаты в прямоугольные
Я плохо объяснил проблему. Мне нужен пересчет и географических координат в X Y для IPoint, при программном добавлении точки
-
- Гуру
- Сообщения: 977
- Зарегистрирован: 27 янв 2009, 22:57
- Репутация: 258
Re: Географические координаты в прямоугольные
Осталось выяснить что Вы имеете ввиду когда говорите о IPoint?Мне нужен пересчет и географических координат в X Y для IPoint, при программном добавлении точки
1 вариант: получение координат точечных объектов в Arcgis - Dim pPoint As IPoint (Но вопрос не в разделе по Arcgis)
2 вариант: iPoint
3 вариант: Процесс IPoint.exe принадлежит программе Microsoft IntelliPoint
-
- Участник
- Сообщения: 70
- Зарегистрирован: 04 сен 2009, 16:47
- Репутация: 1
Re: Географические координаты в прямоугольные
Все решилось. Координаты, видимо, соответствуют выбранной системе координат. Извините за беспокойство 

-
- Новоприбывший
- Сообщения: 1
- Зарегистрирован: 25 ноя 2010, 16:36
- Репутация: 0
Re: Географические координаты в прямоугольные
[quote="bim2010"]Например перевод из Longitude / Latitude (WGS 84) (EPSG: 4326) в Mercator WGS84 Meters
Подскажите, перевожу по формуле координаты из гугла карт в X Y, прибавляю к примеру 500 метров. Конвертирую обратно получаю точку. смотрю по карте, линейкой получается 280метров.
что не так? подскажите может что то не так делаю?
Код: Выделить всё
forwardMercator: function(lon, lat) {
var x = lon * 20037508.34 / 180;
var y = Math.log(Math.tan((90 + lat) * Math.PI / 360)) / (Math.PI / 180);
y = y * 20037508.34 / 180;
return new OpenLayers.LonLat(x, y);
},
что не так? подскажите может что то не так делаю?
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость