
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.26] |
![]() |
|
Сообщ.
#1
,
|
|
|
Вопрос в следующем, как перевести долготу и широту в координаты городов. Может, кто знает данную формулу преобразования или даст ссылку на пример.
|
Сообщ.
#2
,
|
|
|
![]() |
Сообщ.
#3
,
|
|
|
Цитата dubin @ Вопрос в следующем, как перевести долготу и широту в координаты городов. Может, кто знает данную формулу преобразования или даст ссылку на пример. Хм. А что ты понимаешь под "координатами городов"? По мне, так координаты городов - это и есть долгота с широтой. Это если брать географические координаты или WGS-84, например. Если у тебя есть некая растровая карта, координаты на которой тебе надо привязать к географическим координатам городов - то все очень сильно зависит от ее масштаба и проекции. На крупномасштабных картах вполне могут подойти линейные преобразования (домножение на константу + некоторое смещение). Если карта мелкомасштабная - то надо искать формулы соответствующей картографической проекции (которые связывают плоские координаты на листе карты с соответствующими географическими долготой и широтой) и преобразовывать по ним. |
Сообщ.
#4
,
|
|
|
Цитата Flex Ferrum @ ГЕОДЕЗИЧЕСКИЕ если брать географические координаты ![]() |
Сообщ.
#5
,
|
|
|
Цитата Coal@ @ Сдается мне, что dubin раздобыл векторные планы городов в геодезии и не знает. как их отобразить на дисплее. Если у него, например, гарминовские карты, то там, вообще говоря, широта и долгота... ![]() ![]() |
Сообщ.
#6
,
|
|
|
Цитата Flex Ferrum @ Либо Панорамные Если у него, например, гарминовские карты, то там, вообще говоря, широта и долгота... ![]() ![]() |
Сообщ.
#7
,
|
|
|
Цитата Coal@ @ Либо Панорамные ![]() ![]() Маловероятно. ![]() ![]() ![]() |
Сообщ.
#8
,
|
|
|
Geographic Unit
Данный модуль содержит: Прямые формулы картографической проекции, то есть функции преобразования координат точки на сфере из географической системы "широта-долгота" в декартову систему координат проекции этой точки на плоскость. Обратные формулы картографической проекции, то есть функции преобразования декартовых координат проекции точки на плоскости в географические координаты исходной точки на сфере. Для преобразований используется азимутальная проекция. Такая проекция получаются путем переноса по определенному закону земной поверхности на плоскость, касательную к земному шару. Касательной точкой карты является центральная точка. Ее географические координаты определяются пользователем. Математическое обеспечение проекции карты разработано в соответствии с руководством Jonh P. Snyder "Map Projections A Working Manual" - United States Government Printing Office, Washington, 1987. При этом Земля принимается за шар с радиусом 6371,2 км. Точность определения координат вполне приемлема для многих практических задач. Прямые и обратные формулы картографической проекции размещены в DLL-библиотеке geosys.dll. Данная библиотека может быть свободно использована в любых проектах с условием указания авторства. |
![]() |
Сообщ.
#9
,
|
|
Цитата batonn @ При этом Земля принимается за шар с радиусом 6371,2 км. Фу, примитив. Задаваясь таким простым правилом - все расчеты и пятикласник сделает. Но ведь Земля - далеко не шар... |
![]() |
Сообщ.
#10
,
|
|
Сомневаюсь, что их сделает даже выпускник. Библиотека как библиотека.
|
Сообщ.
#11
,
|
|
|
Цитата batonn @ А в полярной получилось бы ещё красивше.Для преобразований используется азимутальная проекция Цитата batonn @ Qraizer, как это ни странно - у нас в расчётах фигурируют метры с хотя бы третьим знаком после запятой. Земля принимается за шар с радиусом 6371,2 км |
![]() |
Сообщ.
#12
,
|
|
А имеет ли это смысл с учётом формы Земли?
|
Сообщ.
#13
,
|
|
|
Цитата Qraizer @ А имеет ли это смысл с учётом формы Земли? Форма земли чаще всего аппроксимируется эллипсоидом, но никак не сферой. Но надо понимать, что такая аппроксимация - приближенная, и, например, параметры этого эллипсоида в американской геодезии, и в нашей будут немного разные, ибо должны обеспечивать минимальные погрешности на всей территории страны. |
Сообщ.
#14
,
|
|
|
Координаты рассчитанные по американскому эллипсу и нашему отличаются всего на пару метров, не более. А если по карте не предполагается наводить ракеты, то вполне хватает и представления Земли в виде шара.
Добавлено А расчёты там действительно не требуют ничего, кроме школьного курса математики. Если бы там была часто используемая в картах проекция на коническую поверхность, формулы были бы посложнее. |
Сообщ.
#15
,
|
|
|
Цитата Qraizer @ А имеет ли это смысл с учётом формы Земли? Цитата Flex Ferrum @ Но под эллипсоидом подразумевается геоид.Форма земли чаще всего аппроксимируется эллипсоидом Цитата amk @ Перевести в код уже готовые формулы может любой... ну почти любой. А про полярную проекцию я уже отпостил, повторять не буду. А расчёты там действительно не требуют ничего, кроме школьного курса математики |
Сообщ.
#16
,
|
|
|
Геоид это и есть настоящая форма Земли. Которую в силу её неаналитичности и приходится аппроксимировать эллипсоидом. Или сферой.
|
Сообщ.
#17
,
|
|
|
А я что - с этим не согласен?
|
Сообщ.
#18
,
|
|
|
Цитата Qraizer @ Сомневаюсь, что их сделает даже выпускник. Библиотека как библиотека. Ну автор этого вообще не профессиональный программист, в том смысле, что не заканчивал ничего кроме военного училища, хотя и работал инженером-программистом. Для задачи выполняемой этой библиотекой точность вполне приемлемая. Точность сетки ПВО 1961 года довольно невысока. А библиотека как раз используется для ее построения в том числе. Программный комплекс Radar Training System 3.0 В то же время оказалось, что перевести готовые формулы в код не так то просто. С помощью стандартных типов C++ не удается даже с точностью в десятки метров. |
Сообщ.
#19
,
|
|
|
Поднимем тему
![]() Вполне прилично выводит и координаты городов и линии Сетки ПВО и линии карты. Задачу выполняет, что и требовалось автору поста. |