Giter VIP home page Giter VIP logo

anygis_maps's Introduction

AnyGIS - Onlime maps pack

This is a my collection with many interesting preset files for mobile navigation apps. It supporting most popular client apps: Locus, Osmand, Orux, GuruMaps, Alpine Quest. This files allows to connect new raster online-maps to moblie navigation apps.

You can also download these maps from AnyGIS.ru download page.


If you have any suggestions what other sources of maps should be added to the collection (and what to remove), then write me an e-mail. It is desirable to attach a link to the page with the map of interest to the letter. And, of course, report bugs and inaccuracies on the site.

Telegram: https://t.me/anygis
Email: [email protected]

anygis_maps's People

Contributors

nnngrach avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

anygis_maps's Issues

Add sources

Hello,

thank you for your work!

you can add spain topo, italy topo, GB topo for osmand please?

Add maps

Melda.ru - Hiking
Melda.ru - Hystoric
Nakarte.me

Yandex Maps

Is there anything we can do with Yandex?
It's been very slow and unstable since June, now it doesn't work at all.
It's very important to me, I can even pay for this option, e.g. provide some paid Yandex.Maps API key in the request URL.

update for locus map

Strava heatmaps no longer work because of update 3.38 in Locus. Someone already provides a description for a fix here.

Нарушение авторских прав

Уважаемый авторы проекта!

Мы обнаружили, что Вами выложены карты издания ООО «СЗ РЦАИ» в растровом виде на сервисе SASGIS, а также мы обнаружили модуль подключения наших карт к ГИС-системам на сайте github.com. Данные карты являются собственностью ООО «СЗ РЦАИ» и не распространяются бесплатно.

Предлагаем Вам до 15 июня 2020 года удалить карты и модуль подключения с указанных ресурсов, удалить карты с Ваших серверов/сервера.

В противном случае мы будем вынуждены обратиться в органы прокуратуры с заявлением о нарушении Вами авторских прав, и причинении тем самым материального ущерба ООО «СЗ РЦАИ».

По интересующим Вас вопросам, а также в случае Вашей заинтересованности во взаимовыгодном сотрудничестве, Вы можете обращаться в наш адрес любым удобным способом указанным на нашем сайте.

Новые проекции

Я пока еще не успел поучаствовать в open-source и не знаю, как это правильно организовывать. Так что я пока просто поскидываю сюда несколько задач, за которые может взяться кто-нибудь желающий.

Так вот. Меня периодически просят добавить всякие карты в нестандартных проекциях. Например вот несколько карт в проекции LKS 1994 (EPSG 3346).
http://maps.lt/map
https://www.geoportal.lt/map/#

В принципе, можно попробовать написать функцию-конвертер координат для этой проекции. Я когда-то нашел что-то подобное для тайлов Яндекса и адаптировал в свой проект. Можно использовать это в качестве примера. Вот как это выглядело.

На этой страничке в разделе "Круглая или не очень" есть описание принципа работы этого конвертера. Простыми словами и с картинками ))
https://anygis.ru/Web/Html/Description_ru

А вот и код. Работает он в четыре этапа.

  1. Берем номер тайла в стандартной проекции. Получаем координаты его левого-верхнего угла. (Формула взята из osm wiki)
    https://www.jdoodle.com/a/1ECy
    https://github.com/nnngrach/AnyGIS_server/blob/671ef7071332e05741f8b2896492b7124f371ec2/Sources/App/ModelsOfLogic/Coordinate%20Tools/CoordinateTransformer.swift#L48

  2. Берем координаты этой точки. Получаем номер тайла Яндекса, на котором она будет лежать. И количество пикселей, на которые эта точка смещена от его левого-верхнего угла.
    https://www.jdoodle.com/a/1ECz
    https://github.com/nnngrach/AnyGIS_server/blob/671ef7071332e05741f8b2896492b7124f371ec2/Sources/App/ModelsOfLogic/Coordinate%20Tools/CoordinateTransformer.swift#L62

  3. Берем номер тайла Яндекса и шаблон его url адреса. Подставляем цифры на место заглушек типа {x},{y},{z}. Получаем 4 готовых url-адреса для скачивания этого и соседних тайлов.
    https://github.com/nnngrach/AnyGIS_server/blob/671ef7071332e05741f8b2896492b7124f371ec2/Sources/App/ModelsOfLogic/Coordinate%20Tools/URLPatchCreator.swift#L39

  4. Берем полученные 4 адреса и величину смещения. Отправляем post запрос с этими данными на мой микро сервер для обработки изображений. Получив запрос, он скачает эти 4 тайла и склеит их в один большой. А затем отступит от левого-верхнего угла требуемое количество пикселей и вырежет квадрат размером 256х256. Это и будет тайл с нужным нам смещением. Можно возвращать эту картинку пользователю.

Вот пример curl запроса, который можно отправлять на микросервер. Параметры должны называться urlTL, urlTR, urlBL, urlTL, urlBR, xOffset, xOffset. Здеь urlTL - это Top Left, а urlBR - это Bottom Right. Можно использовать сервер для отладки.

curl -X POST
http://68.183.65.138:3000/move
-d 'urlTL=https%3A%2F%2Fvec01.maps.yandex.net%2Ftiles%3Fl%3Dmap%26x%3D619%26y%3D318%26z%3D10%26scale%3D2%26lang%3Dru-RU&urlTR=https%3A%2F%2Fvec04.maps.yandex.net%2Ftiles%3Fl%3Dmap%26x%3D620%26y%3D318%26z%3D10%26scale%3D2%26lang%3Dru-RU&urlBR=https%3A%2F%2Fvec01.maps.yandex.net%2Ftiles%3Fl%3Dmap%26x%3D620%26y%3D319%26z%3D10%26scale%3D2%26lang%3Dru-RU&urlBL=https%3A%2F%2Fvec04.maps.yandex.net%2Ftiles%3Fl%3Dmap%26x%3D619%26y%3D319%26z%3D10%26scale%3D2%26lang%3Dru-RU&xOffset=0&yOffset=232'

А теперь, собственно, что нужно сделать?

Нужно найти подходящую формулу для перевода координат. И написать функцию как в пункте 2. Но для проекции LKS 1994 (EPSG 3346). То есть функцию, которая принимает координаты левого-верхнего угла OSM тайла. (latitude: Double, longitude: Double, zoom: Int).

А возвращать она должна номер LKS1994 тайла, на котором лежит точка левого-верхнего угла OSM тайла. То есть что-то такое (x: Int, y: Int, z: Int, offsetX: Int, offsetY: Int)

Вот. Если вы пишите на Swift, дописывайте свою функцию в файл по ссылке из пункта 2. И присылайте пул реквест.

Ну а если (что более вероятно) вы не знаете, что это вообще за язык такой, то можете просто написать эту функцию на любом удобном для вас языке. И присылать ее сюда. Прямо текстом. А я ее потом уже переведу. Думаю, это будет не сложно. Все равно большая часть работы здесь - это поиск и адаптация формул.

Примерно так. Ну, и если будет желание, то можно потом попробовать поставить это все на поток и написать еще несколько онлайн-конверторов для разных проекций. Чтобы можно было смотреть прямо из навигатора все эти локальные онлайн-карты.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.