Вопросы по исходному коду

Форум для обсуждения деталей разработки программы SAS.Планета

Модераторы: vdemidov, Tolik

Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду.

Сообщение vdemidov »

zed писал(а):А в САСе можно как-то найти географические координаты точки, отстоящей от текущей на N метров с азимутом 0 (строго на север)?

Нету. Хотелка 0001188 и в нее упирается дофига разных других хотелок.
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Dima2000
Соображающий
Сообщения: 70
Зарегистрирован: 01 апр 2012, 18:20
Откуда: Россия, Москва
Благодарил (а): 22 раза
Поблагодарили: 5 раз

Re: Вопросы по исходному коду.

Сообщение Dima2000 »

zed писал(а):А в САСе можно как-то найти географические координаты точки, отстоящей от текущей на N метров с азимутом 0 (строго на север)?

Данная частная задача легко решается чисто математически (не в САСе). Как и остальные три задачи смещения строго по сторонам света. Просто добавляем к текущей широте угол, вычисленный из отношения N и полярного радиуса (берется из параметров проекции) и нормируем к диапазону -90°..+90°.

Hint для хотелки 713. Получив указанным способом размеры эллипса в экранных координатах (которые пиксельные, ширину, высоту и центр) не составляет труда его нарисовать на экране (битмапке), с весьма приличной точностью. Думаю для отображения кругов расстояний точности хватит с большим запасом. И даже не надо приводить к многоугольнику, как собирались, эллипс отрисуется точно средствами WinAPI.

Add. Извиняюсь, чушь написал, для эллипса так считать нельзя. :(
Последний раз редактировалось Dima2000 02 окт 2012, 02:43, всего редактировалось 1 раз.
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по исходному коду.

Сообщение zed »

Dima2000 писал(а):Данная частная задача легко решается чисто математически (не в САСе). Как и остальные три задачи смещения строго по сторонам света. Просто добавляем к текущей широте угол, вычисленный из отношения N и полярного радиуса (берется из параметров проекции) и нормируем к диапазону -90°..+90°.

И на сколько это будет точно?
Dima2000
Соображающий
Сообщения: 70
Зарегистрирован: 01 апр 2012, 18:20
Откуда: Россия, Москва
Благодарил (а): 22 раза
Поблагодарили: 5 раз

Re: Вопросы по исходному коду.

Сообщение Dima2000 »

Double. Всё упрётся в точность радиуса и вычислений синуса (или косинуса?). Т.е. микроны получите легко. :D "Це ж чисто математика!" :)
Dima2000
Соображающий
Сообщения: 70
Зарегистрирован: 01 апр 2012, 18:20
Откуда: Россия, Москва
Благодарил (а): 22 раза
Поблагодарили: 5 раз

Re: Вопросы по исходному коду.

Сообщение Dima2000 »

Для долготы вычисления чуть сложнее, надо брать не экваториальный радиус, а радиус по текущей широте, который меньше экваториального (экваториальный*cos(широта)).
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по исходному коду.

Сообщение zed »

Э.. а набросайте-ка сюда формул как это всё посчитать? И в расчётах ведь N это же будет длина дуги, а не прямая?
Dima2000
Соображающий
Сообщения: 70
Зарегистрирован: 01 апр 2012, 18:20
Откуда: Россия, Москва
Благодарил (а): 22 раза
Поблагодарили: 5 раз

Re: Вопросы по исходному коду.

Сообщение Dima2000 »

Что-то засомневался в формуле Ra*cos(широта), может для эллипсоида вращения она и не такая? Ну да для движений по меридианам это и не важно. :)
Э, и вообще сомневаюсь. Полезу в вики ...
Мда, не прав. Даже для меридианов. :'( Низя так считать оказывается. Вот жалость, формулы убил. Убейте всё моё, что ли ...
Точность будет порядка 0.2% (для расстояния 6400км) - точность приближения сечения геоида окружностью. Для меньших расстояний - ещё лучше. Если такой точности хватит - формулы снова напишу. :)
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по исходному коду.

Сообщение zed »

Нагуглил реализацию искомого алгоритма. Подробности см. в хотелке 1188
Manfred
Новичок
Сообщения: 4
Зарегистрирован: 02 дек 2009, 14:04

Re: Вопросы по исходному коду.

Сообщение Manfred »

Никак не могу найти, где лежит архив с исходными кодами. Как-то скачал его, посмотрел, да времени не было заняться.
Сейчас кинулся - ан нет, не смог найти архив. Не качать же отдельные файлы :)
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по исходному коду.

Сообщение zed »

На странице с исходниками есть кнопочка download по которой загружаются самые свежие исходники.

Image.gif
Ответить

Вернуться в «Раздел для разработчиков программы SAS.Планета»