Основы конфигурирования тайловых сеток

Обсуждение материалов сайта: вопросы, замечания, предложения
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 29 мар 2013, 19:25

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

---------------------------------------------------------------------
P.S. Статья опубликована.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9128
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 747
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Максим Дубинин » 29 мар 2013, 21:02

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

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Основы конфигурирования тайловых сеток

Сообщение Александр Мурый » 29 мар 2013, 22:17

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

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 30 мар 2013, 06:00

Александр Мурый писал(а):Лично мне не хватило общих выводов в конце по применению тайловых сеток "в мирных целях" или что-то в этом духе...
Цель статьи заключается не в том, чтобы показать для чего нужны тайловые сетки. Думаю, что каждый, кто пользовался сервисами типа OpenStreetMap или Google Maps оценил удобство от их использования. Я ставил перед собой цель показать именно с технической стороны, что из себя представляют эти сетки и каким набором параметров они характеризуются. Полученные знания, как показано в статье, можно применять для настройки специального софта для работы с тайловыми сетками (MapProxy), а можно использовать при создании собственного тайлового сервиса. Именно такого плана задачу я хочу описать в одной из своих следующих статей и как раз для этого мне потребовался перевод спецификации TMS и описание основ конфигурирования тайловых сеток.
Александр Мурый писал(а):Ну и, может быть, добавить какие-то ссылки на полезные материалы для самостоятельного изучения?
Добавил несколько ссылок на материалы, которые я просматривал при написании статьи.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 30 мар 2013, 06:03

Максим Дубинин писал(а):В расчете охвата слоя я бы добавил и версию запроса к локальному шейпу, не только к базе, на случае если нет интернета
Максим, в моём случае с помощью ogrinfo вычисляется не охват слоя, а охват конкретного объекта слоя - Алтайского края с помощью функции PostGIS. Если это можно сделать для шейп-файла (хотя бы в единицах слоя), то покажи, пожалуйста, команду - я добавлю.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 30 мар 2013, 06:35

Добавил пример расчёта количества тайлов на i-м масштабном уровне.
Spatial is now, more than ever, just another column- The Geometry Column.

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: Основы конфигурирования тайловых сеток

Сообщение yellow-sky » 01 апр 2013, 09:08

Отличная статья. В закладки. И этот вариант использования mapproxy-util нужно взять на вооружение. Удобно рассчитывать сетки имея только экстент.

P.S.
Теперь я знаю кому писать, если будут проблемы с кэшем :)

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 03 апр 2013, 07:30

Дописал 2 раздела: Подробнее о разрешениях и Понятие масштаба карты. Просьба покритиковать. Ещё к месту пришлась забавная игра, наглядно демонстрирующая как проекция Меркатора искажает площади объектов.
Spatial is now, more than ever, just another column- The Geometry Column.

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Основы конфигурирования тайловых сеток

Сообщение Александр Мурый » 03 апр 2013, 08:28

Denis Rykov писал(а): Ещё к месту пришлась забавная игра, наглядно демонстрирующая как проекция Меркатора искажает площади объектов.
Стало ещё интереснее :)
Замечания:
Среди разбросанных полигонов найдите соответствующий Австралии и оцените как изменяется его форма в области полюсов по отношению к форме, получающуюся при рендеринге на своём законном месте:
Насчёт области полюсов — это подсказка? Тогда слишком просто получается… :) Может, сказать правильный ответ ниже карты, перед объяснением проекции?

— К предыдущему: неплохо было бы на карте показать Австралию, раз уж о ней идёт речь. С текущим масштабом её не видно.

— К масштабу: имеется в виду «экранный» масштаб?
Редактор материалов, модератор форума

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 03 апр 2013, 08:45

1. Нет, это не подсказка. Цель данной штуки показать как изменяется форма объектов в районе полюсов. И то что Австралия по дефолту размещена возле полюса - просто так совпало, а если это кому-то поможет быстрее найти её - это даже хорошо, в конце концов если хочется поотгадывать страны - то там целых 15 полигонов для этого.
2. Изменил размер фрейма, теперь вроде входит.
3. Насчёт масштаба - я привёл формулу, не знаю - это называется "экранный масштаб"? В англоязычных источних никогда не встречал такого термина, просто пишут scale и всё.
Spatial is now, more than ever, just another column- The Geometry Column.

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Основы конфигурирования тайловых сеток

Сообщение Александр Мурый » 03 апр 2013, 09:10

Denis Rykov писал(а): 3. Насчёт масштаба - я привёл формулу, не знаю - это называется "экранный масштаб"? В англоязычных источних никогда не встречал такого термина, просто пишут scale и всё.
Ну да, "display scale" относится как к экрану, так и к печатной карте. Поэтому я и взял в кавычки. Но т.к. в формуле считается масштаб именно для экрана, то заголовок "Понятие масштаба карты", по-моему, звучит слишком общо.
Редактор материалов, модератор форума

ericsson
Гуру
Сообщения: 3321
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 748
Ваше звание: Вредитель полей

Re: Основы конфигурирования тайловых сеток

Сообщение ericsson » 03 апр 2013, 09:45

Угу, только вот с экранным масштабом такая вот незадача: разрешение экрана - логическая величина, а не физическая. Например, в Windows есть любимая многими настройка "large fonts" которая включает 72dpi вместо 96dpi для экрана. Так что с понятием экранного масштаба - осторожнее.

Пикантности проблеме добавляет то, что у мониторов тоже шаг пикселя может быть разный (иначе бы при одинаковой диагонали они не имели бы разное разрешение в пикселях).
А вот простой тест, который позволяет определить соответствие логического разрешения физическому:

Код: Выделить всё


<html>
<head></head>
<body>
<div style="background-color:black; color:white; width:96px; height:96px; display:block; margin:50px auto; text-align:center;">96px*96px</div>
<div style="background-color:black; font-size:13px; color:white; width:72px; height:72px; display:block; margin:50px auto; text-align:center;">72px*72px</div>
<div style="margin:50px auto; background-color:black; font-size:13px; color:white; width:96px; line-height:1in; text-align:center;">96px*1in</div>
</body>
</html>

Скопируйте код, сохраните в test.html, откройте в browser-е. А теперь линейкой измерьте верхние два квадрата: один из них должен совпасть (в идеале) или быть близким по размеру к одному дюйму (25,4 мм). Этим проверяется физическое разрешение монитора.

А нижний прямоугольник имеет жестко фиксированную ширину 96 пикселей, но высоту, заданную через высоту строки 1 дюйм. Так что если логическое разрешение не 96dpi, то квадрат будет не квадратом.

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 03 апр 2013, 10:14

То есть мне изменить название пункта с "Понятие масштаба карты" на "Понятие экранного масштаба карты"?
Spatial is now, more than ever, just another column- The Geometry Column.

ericsson
Гуру
Сообщения: 3321
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 748
Ваше звание: Вредитель полей

Re: Основы конфигурирования тайловых сеток

Сообщение ericsson » 03 апр 2013, 10:37

Наверное, да - экранного.

А еще есть экраны с удвоенным разрешением (маковская Retina) - там вообще чёрт голову сломит...

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Основы конфигурирования тайловых сеток

Сообщение Denis Rykov » 03 апр 2013, 11:09

Поправил, спасибо за замечания!
Spatial is now, more than ever, just another column- The Geometry Column.

Ответить

Вернуться в «Материалы сайта»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 24 гостя