Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » SatMap (часть 3)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62

Открыть новую тему     Написать ответ в эту тему

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие части темы

 
SatMap
просмотр, скачивание, кэширование, склейка и привязка спутниковых снимков/гибрида/карт/ландшафта с сервиса Google Maps.

 
FAQ
Настоятельно рекомендуется ознакомиться как опытным пользователям, так и всем новичкам.

 
Текущая версия 2.9.9 (multilingual):
История версий
полный комплект v2.9.9 (3.5 Mb)
v2.9.9 (только exe) (2.19 Mb)
SatMap API
 
* - архивы в формате 7-zip
 


Кэши скачанных районов
 


 
Официальный сайт http://satmap.narod.ru

 
Основные функции и возможности (на данный момент):
1. Импорт данных из кэша GoogleMV (версии 2.7+), SatMap, SASPlanet, Global Mapper
2. Формат кэша: 1 кэш = 1 файл
3. До 100 подключаемых кэшей
4. Экспорт в кэш формата GoogleMV, SatMap, SASPLanet, sqlitedb (RMaps, Locus Map, OruxMaps)
5. Поиск, сохранение и переход по введенным координатам/названию места
6. Импорт/экспорт путевых точек и треков в форматах OziExplorer (*.wpt, *.plt), *.gpx, *.kml
7. Измерение расстояния
8. Склейка/экспорт данных в графические форматы JPG, PNG, TIFF, ECW, JPEG2000, MrSID
9. Геопривязка в форматах Ozi Explorer, MapInfo, world-файл, TomTom overlay
10. Закачивание данных с сервиса Google Maps без бана
11. Показ высоты по данным SRTM
12. API для управления SatMap
13. Навигационный режим работы с GPS-приемником
14. Работа с базой данных географических названий объектов GNS
15. Пользовательские инструменты
16. Закачка тайлов только по треку (выбираемая ширина коридора в метрах или тайлах)
 
Планируется:
1. Работа с форматом kmz
2. Возможность скачивать данные с других сервисов
3. и многое другое......
 
Программа распространяется бесплатно. Используйте ее на свой страх и риск.
 
Помочь проекту
WebMoney:
R185452921094
Z336558313529
Яндекс.Деньги:
4100166097013

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 11:57 02-08-2010 | Исправлено: relictus, 10:40 24-08-2022
relictus

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Krzr

Цитата:
А за доплату?))

Насчет платных услуг пишите на мыло, указанное в меню "Помощь"-"О программе" - обсудим

Всего записей: 3712 | Зарегистр. 19-04-2005 | Отправлено: 10:30 18-11-2022
karst

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
relictus
Надо перегнать кэш SAS\cache_sqlite\osm_CycleMap\ в какой-нибудь из кэшей SatMap (карты или рельеф).
Раньше можно было просто переименовать папку с тайлами SAS и SatMap все правильно заглатывала и переваривала.
Но сейчас, кэш SAS в .sqlitedb и как его импортировать в SatMap не совсем понятно (или совсем не понятно, разве что как то перегнать .sqlitedb в старый формат. )

Всего записей: 344 | Зарегистр. 05-07-2008 | Отправлено: 23:18 25-11-2022
relictus

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
karst
Ну только так
Цитата:
перегнать .sqlitedb в старый формат


Всего записей: 3712 | Зарегистр. 19-04-2005 | Отправлено: 19:31 26-11-2022
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
karst
relictus
Структура таблиц в файлах .sqlitedb в папке cache_sqlite не очень сложная и там есть все основные поля, которые нужны в кэше SatMap.
Так что можно будет как-нибудь и написать такую простую вспомогательную программу SASPlanetSqlite2SatMapCache.exe для копирования всех файлов из папки cache_sqlite программы SAS.Планета в кэш SatMap, или в группу кэшей SatMap с именами sat.cache, Both.cache, map.cache, osm_CycleMap.cache и тд - эта программа могла бы создать отдельный кэш SatMap для каждой вложенной папки внутри папки cache_sqlite, или сделать кэш SatMap для отдельной выбранной папки из них.  
 
Осталось только выбрать для этого время кому-нибудь из пользователей SatMap, написать такую программу и выложить здесь на форуме ссылку на нее.  
Удобная будет утилита

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 11:38 27-11-2022 | Исправлено: nemo3001, 11:56 27-11-2022
karst

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nemo3001

Цитата:
Осталось только выбрать для этого время кому-нибудь из пользователей SatMap, написать такую программу и выложить здесь на форуме ссылку на нее.  
Удобная будет утилита

Реально это может сделать только сам relictus
 
relictus
 
Но было бы проще выложить здесь альфа версию новой SatMap, где, как я понимаю, поддержка разных картографических сервисов уже добавлена.

Всего записей: 344 | Зарегистр. 05-07-2008 | Отправлено: 14:38 27-11-2022
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nemo3001
karst
На заметку: Руководство по SQLite в Python.
 
Задача ведь очень простая даже для не программиста - всего-то надо выполнить select из одной БД и insert в другую.

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 18:48 27-11-2022
relictus

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
karst

Цитата:
выложить здесь альфа версию новой SatMap, где, как я понимаю, поддержка разных картографических сервисов уже добавлена

Там все еще не реализована закачка по выделению, только при просмотре.
zedxxx
Если я правильно помню, у вас там БД разбита по каталогам, не одним файлом? С этим могут быть сложности. А так-то да, select'ом все просто делается. И даже пайтон не нужен) Можно query практически в любом менеджере БД написать.

Всего записей: 3712 | Зарегистр. 19-04-2005 | Отправлено: 08:38 28-11-2022
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну, погуглить немножко придётся и заюзать готовую функцию.  
 
С Python только ленивый не разберётся.

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 10:29 28-11-2022
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
relictus
zedxxx

Цитата:
написать такую простую вспомогательную программу SASPlanetSqlite2SatMapCache.exe

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

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 00:43 29-11-2022
karst

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
relictus

Цитата:
 
Там все еще не реализована закачка по выделению, только при просмотре.  

А по списку уже есть?
Можно было бы делать список в старой версии, исправлять файл закачки под нужный сервис и загружать в новой версии.

Всего записей: 344 | Зарегистр. 05-07-2008 | Отправлено: 20:32 02-12-2022
relictus

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
karst

Цитата:
А по списку уже есть?

Нет, это вообще где-то на задворках планов

Всего записей: 3712 | Зарегистр. 19-04-2005 | Отправлено: 11:29 03-12-2022
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
relictus
Занявшись идеей отображения в программе километровой сетки, я обнаружил в SatMap (и в SAS.Планета тоже) немного странное поведение инструмента измерения расстояния для больших расстояний, близких в их угловом значении к 180 градусам на карте.
А может быть это - особенности используемой проекции карты. Но решил написать об этом и обсудить здесь.
 
Если это все-таки не искажения, связанные с WGS 84, то, возможно, так выглядят на карте ошибки округления в используемых формулах определения расстояния при углах близких к 180 градусах.
Как-то ты писал на форуме, какую формулу ты используешь для определения расстояния на карте с ее модификацией для антиподов:
http://forum.ru-board.com/topic.cgi?forum=5&topic=34341&start=1020#21
Описание таких формул определения расстояния по географическим координатам есть, например, на странице
https://www.kobzarev.com/programming/calculation-of-distances-between-cities-on-their-coordinates/
 
Глядя на изображение этой моей километровой сетки на карте Земли, я подумал, что, может быть, эта формула даже с модификацией для антиподов дает все-таки не такие уж хорошие результаты.  
И тогда не очень ясно, насколько точно мы измеряем в программе расстояния на карте для точек с координатами, близкими к +-180 градусам долготы, и не лежащих на экваторе, где картинка километровой сетки выглядит вполне нормально.
 
Ну, или здесь все в порядке, и изображение километровой сетки так и должно выглядеть на карте. А все расстояния в этих областях на карте измеряются также точно, как и в ее центре.
 
Файл Земля_Километровая сетка, версия 1, описание_SatMap.jpg

 
Файл Земля_1000км_All_v1.kml
http://f0445762.xsph.ru/Counter_MySQL/!internet/ver1/download_internet.php?file=Земля_1000км_All_v1.kml
или здесь
http://s2.gsgt.ru:8010/Counter_MySQL/!internet/ver1/download_internet.php?file=Земля_1000км_All_v1.kml
 
Подробнее...

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 18:18 10-06-2023 | Исправлено: nemo3001, 18:33 10-06-2023
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nemo3001
"Никто не сделал для величия России больше, чем Герард Меркатор." (с)
 
Да, это особенность проекции: чем дальше от экватора, тем меньше километров умещается в одном пикселе.
 
   

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 18:39 10-06-2023
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zedxxx
Да, это, конечно, вполне понятно. Но я тут написал не просто об искажениях расстояний на карте, что очевидно и ясно из описаний геометрических искажений в проекциях сфероида на плоскость карты.
А о странной неравномерности таких искажений линейных расстояний, измеренных в километрах, в областях карты, расположенных вблизи 180 меридиана.
 
Значит, вы считаете, что и эти резкие отклонения километровой сетки на карте вблизи значений долготы точек около 180 градуса - это тоже просто особенности отображения проекции, а не проблемы самой формулы измерения расстояний, используемой программами?
Ну, и хорошо, если это связано только с проекцией. А то странно было бы измерять в программе расстояния где-нибудь на Камчатке с большими отклонениями по сравнению с такими же расстояниями на той же широте где-нибудь в Великобритании.  
Да и проверить-то это на практике было бы сложновато.
 
 
Добавлено:
А вообще, ведь используемые обычно программами формулы измерения расстояний по координатам рассчитаны на измерения по поверхности сферы. Они не так сложны, как формулы для измерения расстояний по поверхности эллипсоида вращения, но дают вполне приемлемые для практики результаты.
Можно, например сравнить формулы для шара здесь:
https://www.kobzarev.com/programming/calculation-of-distances-between-cities-on-their-coordinates/
и формулы измерения расстояний по поверхности эллипсоида вращения здесь:
https://en.wikipedia.org/wiki/Vincenty%27s_formulae
 
То есть, само по себе измерение расстояний в программах обычно никак не связано с проекциями отображаемых карт. Мы берем координаты в градусах двух точек, считаем, что они находятся на поверхности шара и вычисляем угловое расстояние между ними по дуге большого круга, умножая потом угловое значение расстояния на средний радиус планеты: не на экваториальный радиус, и не на полярный, а на средний, чтобы неизбежные отклонения в измерениях по поверхности шара вместо сфероида были бы минимальны.
 
В описании вариантов формул измерения расстояния в километрах по координатам точек в градусах на поверхности шара упоминается проблема этих формул в неточности вычисления расстояний для антиподов - точек, расположенных на противоположных сторонах шара, например с разницей координат по долготе, близких к 180 градусам.
 
Но, может быть, модификация этих формул для точек-антиподов все-таки решает проблему полностью, и тогда странный вид этой моей километровой сетки, измеряемой от 0 меридиана, вблизи 180 меридиана все-таки полностью объясняется не ошибками в формулах, а особенностями используемой проекции.

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 19:22 10-06-2023 | Исправлено: nemo3001, 23:55 15-06-2023
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не могу скачать ваши kml чтобы проверить.
 
Добавлено:
И ещё, SAS измеряет расстояния на сфере/эллипсе, но линии между точками отображает в виде прямых, хотя на самом деле, при больших расстояниях, там дуга. Вот в GoogleEarth, там всё наглядно видно.
 
Добавлено:
Вы когда точки строили, как расстояния откладывали, от соседней или от начала координат? Если бы расстояния считались по прямой, то разницы нет, а вот если там дуга, то и выходят сюрпризы)

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 19:42 10-06-2023 | Исправлено: zedxxx, 19:52 10-06-2023
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот это резкое изменение расстояния между точками километровой сетки с отметками 5000 км и 6000 км и выглядит непропорционально большим по сравнению с изменением расстояний от нулевого меридиана до остальных точек сетки на этой же широте, что и вызвало некоторое сомнение в правильности работы инструмента измерения расстояния, а, точнее, в корректности используемых им формул расчета расстояния.

 
 
Добавлено:
zedxxx

Цитата:
Не могу скачать ваши kml чтобы проверить

Файл Earth_1000km_All_v1.kml, проверил вот эту ссылку для загрузки, работает (исправил ее сейчас):
http://f0445762.xsph.ru/Counter_MySQL/!internet/ver1/download_internet.php?file=Earth_1000km_All_v1.kml
или здесь
http://s2.gsgt.ru:8010/Counter_MySQL/!internet/ver1/download_internet.php?file=Earth_1000km_All_v1.kml

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 20:04 10-06-2023 | Исправлено: nemo3001, 20:24 10-06-2023
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Раз: https://i.imgur.com/SX7amyN.png
 
и два: https://i.imgur.com/xMV2otY.png

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 20:39 10-06-2023 | Исправлено: zedxxx, 15:22 13-06-2023
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zedxxx

Цитата:
Вы когда точки строили, как расстояния откладывали, от соседней или от начала координат? Если бы расстояния считались по прямой, то разницы нет, а вот если там дуга, то и выходят сюрпризы)

 
На этой картинке "Земля_Километровая сетка, версия 1, описание_SatMap.jpg", где указана "версия 1", и в соответствующем ему файле путевых точек "Earth_1000km_All_v1.kml" расстояния вдоль широты измерялись правильно, как я и планировал сразу делать - от нулевого меридиана до каждой точки сетки в отдельности.
 
А в процессе работы у меня появился еще и такой же файл с надписью "версия 2", где я вдоль широты  измерял расстояние в км от соседней точки. Так километровая сетка выглядит более аккуратной и никаких отклонений в ее внешнем виде, конечно, нет, потому что каждое расстояние измерялось небольшое - равное шагу сетки в километрах (1000 км). Только вот эта сетка не соответствовала точно первоначальному замыслу: измерять расстояния до точек от нулевого меридиана. А значит и надписи для каждой точки здесь не соответствовали шагу сетки при измерении расстояний от нулевого меридиана.
 
То есть, долгота каждой точки сетки в версии 1 при шаге в 1000 км была 0км, 1000 км, 2000 км и тд, а для версии 2 долгота каждой точки сетки после 0 градусов постепенно все сильнее отличалась немного от шага сетки, потому что расстояние здесь измерялось каждый раз от соседней точки, а не от нулевого меридиана.
 
Эти отличия между версиями сетки 1 и 2 хорошо сразу заметны в мелком масштабе карты - например, с видом на всю Землю.
А вот в крупном масштабе участка карты эти километровые сетки 1 и 2 версии (с измерением по широте от нулевого меридиана и от соседней точки сетки) внешне  почти не отличаются. Только вот надписи координат в км для каждой точки будут разными: для 1 версии - в соответствии с шагом сетки, а для 2 версии - отличающиеся от шага сетки.
 
Вот здесь можно посмотреть картинку и файлы для версии 2, где расстояния вдоль одинаковой широты измеряются от соседней точки:
Файл Земля_Километровая сетка, версия 2, описание_SatMap.jpg
 
 
Файл Earth_1000km_All_v2.kml
http://f0445762.xsph.ru/Counter_MySQL/!internet/ver1/download_internet.php?file=Earth_1000km_All_v2.kml
http://s2.gsgt.ru:8010/Counter_MySQL/!internet/ver1/download_internet.php?file=Earth_1000km_All_v2.kml
 
 
Добавлено:
zedxxx

Цитата:
Раз:  

Да, так и работает измерение расстояний для сетки версии 1, где расстояния измеряются от нулевого меридиана, а не от соседней точки сетки.
 
Добавлено:
zedxxx

Цитата:
 а вот если там дуга, то и выходят сюрпризы)

Да, это понятно, конечно. Большие расстояния измеряются по дуге (примерно так, как самолеты летают во flightradar24).  
 
Но не на это я обратил внимание, а на большое отличие, прямо скачком, таких дуг, таких расстояний для точек, находящихся вблизи 180 меридиана - то расстояния между точками километровой сетки нарастали постепенно, а то около 180 меридиана расстояние между соседними точками сетки выросло сразу большим скачком.

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 20:53 10-06-2023
zedxxx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну вот ещё взгляд с другого ракурса: https://i.imgur.com/7Ufus2o.jpeg
 
Не спроста меркатора на зоны поделили чтобы сетку рисовать...

Всего записей: 1505 | Зарегистр. 14-07-2008 | Отправлено: 21:08 10-06-2023
nemo3001

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
А вот в крупном масштабе участка карты эти километровые сетки 1 и 2 версии (с измерением по широте от нулевого меридиана и от соседней точки сетки) внешне  почти не отличаются.

 
Вот, просто для примера, километровая сетка для Москвы с шагом сетки в 10 км и в версии 1, и в версии 2 практически не отличаются внешне, только по подписям для каждой точки сетки, где, как обычно, в версии 1 (с измерением расстояния от нулевого меридиана) подписи будут соответствовать шагу сетки (10 км), а в версии 2 (с измерением расстояния от соседней точки) они будут отличаться от шага сетки.
 
Файл Москва_10км_v1_SASPlanet_расстояние, описание.jpg
 
Файл Moscow_10_km_v1.kml
http://f0445762.xsph.ru/Counter_MySQL/!internet/ver1/download_internet.php?file=Moscow_10_km_v1.kml
http://s2.gsgt.ru:8010/Counter_MySQL/!internet/ver1/download_internet.php?file=Moscow_10_km_v1.kml
 
Файл Москва_10км_v2_SASPlanet_расстояние, описание.jpg
 
Файл Moscow_10_km_v2.kml
http://f0445762.xsph.ru/Counter_MySQL/!internet/ver1/download_internet.php?file=Moscow_10_km_v2.kml
http://s2.gsgt.ru:8010/Counter_MySQL/!internet/ver1/download_internet.php?file=Moscow_10_km_v2.kml
 
 
Добавлено:
zedxxx

Цитата:
Не спроста меркатора на зоны поделили чтобы сетку рисовать

Ну, что же. Будем пока считать, что странный вид моей километровой сетки в версии 1 (с отсчетом расстояний от нулевого меридиана) около долготы 180 градусов - это не ошибка формул расчета расстояний, а просто особенность отображения сетки на карте планеты.
 
Может быть позже как-то удастся проверить прямо на местности правильность измерения расстояний в программе для областей Земли в районе 180 долготы.
 
Дополнение:
Для наглядности я изобразил пока вручную часть этой километровой сетки с названиями части путевых точек (широта км, долгота км) вот на этой картинке

 
И по этой картинке эту странность поведения изображения километровой сетки можно сформулировать более кратко:
почему-то изображение расстояния на карте, например, вдоль широты 7000 км между точками (7000 км, 0 км) - (7000 км, 1000 км) - (7000 км, 2000 км), и тд до (7000 км, 5000 км) увеличивается незначительно, а вот до точки (7000 км, 6000 км) изображение расстояния сразу становится намного больше.
Ну, и на других широтах это выглядит так же, и чем дальше от экватора, тем эта разница в расстояниях на изображении заметнее.
 
Причины такого поведения километровой сетки на долготе, близкой к 180, мне до сих пор были не очень-то понятны. То, что эта странность могла быть как-то связана с работой формулы для измерения расстояния - это было просто мое предположение, которое я и хотел тут обсудить на форуме.  
 
Возможно, что причина странной картинки километровой сетки на ее краях намного очевиднее - просто так выглядит шар, если на нем измерять расстояния от экватора и от нулевого меридиана и накладывать на него такую вот километровую сетку (версии 1).
 
То есть, возможно, что так и должна выглядеть километровая сетка, если соблюдать правила ее формирования в измерении расстояний точек сетки от экватора и от нулевого меридиана.
Тем более, что в более крупном масштабе карты такая километровая сетка отображается уже более равномерной, предсказуемой и более удобной для использования.
 
И тогда инструмент измерения расстояния в SatMap (и в SASPlanet тоже) работает без замечаний, нормально.
 

Всего записей: 234 | Зарегистр. 06-05-2010 | Отправлено: 21:19 10-06-2023 | Исправлено: nemo3001, 23:59 15-06-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62

Компьютерный форум Ru.Board » Компьютеры » Программы » SatMap (часть 3)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru