Уважаемые коллеги!
Несколько слов о картах на сайте pamyat-naroda.ru.
Там есть два типа карт:
Тип 1. карта, которая хранится на сервере в полном размере (функция масштабирования находится над картой).
Тип 2. карта, которая хранится на сервере по частям (функция масштабирования находится в левой части карты).
Загрузка карты типа 1.Требуется минимальное знание ХТМЛ. Вы должны использовать браузер Хроме или Фирефокс.
Щелкните правой кнопкой мыши на объекте 1 и выберите "Исследовать" (Vizsgálat). Консоль запускается.
Выберите элемент внутри btnSaveImage.
Снимите флажки "display:none".
Теперь кнопка видна, вы можете закрыть консоль с помощью x на правой верхней стороне.
Загрузка карты типа 2.Карта хранится на сервере небольшими (256х256 пикселей) кусочками.
Загрузку можно сделать программно.
Процесс заключается в следующем:
1.) Определение базового УРЛ адреса изображения (tileMapResourceUrlBase).
С помощью консоли браузера мы должны найти элемент: "data-doc-url".
Например, если data-doc-url:
https://cdn.pamyat-naroda.ru/images/Передача_039_КП097Р_С39/243-0002900-1974/00000002.jpg
базовый УРЛ адрес:
https://cdn.pamyat-naroda.ru/tiles/Передача_039_КП097Р_С39/243-0002900-1974/00000002.jpg
2.) Загрузка tilemapresource.xml
например, если tileMapResourceUrlBase:
https://cdn.pamyat-naroda.ru/tiles/Передача_039_КП097Р_С39/243-0002900-1974/00000002.jpg
УРЛ адрес:
https://cdn.pamyat-naroda.ru/tiles/Передача_039_КП097Р_С39/243-0002900-1974/00000002.jpg_tiles/tilemapresource.xml
Это дескриптор, содержащий тип геопривязки, информацию о масштабировании, кодирование, тип МИМЕ и т. Д.
3.) Парсинг tilemapresource.xml
Определение переменных с помощью xpath:
minx="/TileMap/BoundingBox/@minx"
miny="/TileMap/BoundingBox/@miny"
maxx="/TileMap/BoundingBox/@maxx"
maxy="/TileMap/BoundingBox/@maxy"
zoom="/TileMap/TileSets/TileSet[last()]/@href"
4.) Вычислите индексы плиток (кусочков изображения). Мы должны использовать метод EPSG:900913.
https://wiki.osgeo.org/wiki/Tile_Map_Service_Specification5.) В цикле мы должны загрузить куски. Формат УРЛ адреса:
tileMapResourceUrlBase + "_tiles/" + zoom + "/" + х + "/" + y + ".png";
Поскольку загрузка происходит медленно и их могут быть тысячи штук, мы должны использовать многопоточную реализацию.
6.) Воссоединение загруженных изображений.
Пример кода находится здесь:
https://drive.google.com/drive/folders/1LF82CDreGmSDrbAfBPEvrMzwrwENo1Uw?usp=sharingС уважением