Карта заполнения для полигона

Запрашиваем и выполняем хотелки к SAS.Планете вне очереди

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

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

Re: Карта заполнения для полигона

Сообщение zed »

Сделал и собрал ночнушку. Тестируйте.

Получилось нечто среднее между первым и вторым вариантом: тайлы, которые полигон пересекает проверяются не целиком, а только по границам прямоугольника, в который вписывается полигон. На скриншоте показана карта заполнения для полигона (существующие тайлы на +1 зуме), при этом в кэше есть все тайлы в пределах экрана. Т.е. на диске вместо проверки 16 тайлов (4*4), что предполагалось по первому варианту, выполнилась проверка 9 тайлов.

Image 1.jpg
Аватара пользователя
Papazol
Гуру
Сообщения: 2069
Зарегистрирован: 04 дек 2009, 01:39
Откуда: Рязань
Благодарил (а): 73 раза
Поблагодарили: 647 раз

Re: Карта заполнения для полигона

Сообщение Papazol »

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

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

Re: Карта заполнения для полигона

Сообщение zed »

Нет, должно строить только для видимой области.
vasketsov
Специалист
Сообщения: 901
Зарегистрирован: 25 июл 2009, 21:15
Поблагодарили: 193 раза

Re: Карта заполнения для полигона

Сообщение vasketsov »

Papazol писал(а):карта заполнения будет всё равно строиться для всего полигона?

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

Re: Карта заполнения для полигона

Сообщение zed »

Добавил ещё фикс улучшающий построение карты для мультиполигонов. Ночнушку пересобрал, тестируйте опять :)
Аватара пользователя
Papazol
Гуру
Сообщения: 2069
Зарегистрирован: 04 дек 2009, 01:39
Откуда: Рязань
Благодарил (а): 73 раза
Поблагодарили: 647 раз

Re: Карта заполнения для полигона

Сообщение Papazol »

Так, к вопросам. (Сборку я обновил).

Мне показалось, или построенная карта заполнения запоминается в ОЗУ? В первый раз строится долго, во второй и последующие - прямо быстро. Будет ли использоваться полученная карта для полигона при построении обычной карты для всего экрана?
На каком зуме строится описывающий прямоугольный полигон? Видно, что этот зум меняется в зависимости от текущего зума, но это не всегда именно текущий зум. Нельзя ли всегда строить описывающий полигон на том зуме, для которого строится карта заполнения?
Правильно ли, что, если карта заполнения для полигона построена, и мы меняем зум, для которого она строится, на обычной панели инструментов, то карта заполнения перестраивается для всё того же полигона? То есть, чтобы построить её для всего экрана, нужно сначала отменить построение, а потом снова задать.

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

Re: Карта заполнения для полигона

Сообщение zed »

Papazol писал(а):Мне показалось, или построенная карта заполнения запоминается в ОЗУ?

Там много чего в ОЗУ запоминается. Есть кэширование на уровне тайлохранилища, есть кэширование у рисовалки. В самой винде, в конце концов, тоже есть кэширование. Всё это кэширование работает не зависимо от того, по полигону строится карта или нет. Т.е. это всё было и раньше, я ничего специально не делал.
Papazol писал(а):На каком зуме строится описывающий прямоугольный полигон?

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

Не трогал.
Papazol писал(а):В принципе, что хотел, я получил!

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

Re: Карта заполнения для полигона

Сообщение zed »

Papazol писал(а):Правильно ли, что, если карта заполнения для полигона построена, и мы меняем зум, для которого она строится, на обычной панели инструментов, то карта заполнения перестраивается для всё того же полигона? То есть, чтобы построить её для всего экрана, нужно сначала отменить построение, а потом снова задать.

Да.

А редактировать свои сообщения и добавлять в них вопросы - зло. Я этого редактирования мог не заметить.
Аватара пользователя
Papazol
Гуру
Сообщения: 2069
Зарегистрирован: 04 дек 2009, 01:39
Откуда: Рязань
Благодарил (а): 73 раза
Поблагодарили: 647 раз

Re: Карта заполнения для полигона

Сообщение Papazol »

zed писал(а):Не понял, какую связь вы заметили с полигоном и зумом, и что вас не устраивает.

Прежде всего, меня всё устраивает. Насчёт своих вопросов я уже неоднократно и подробно писал, нет смысла повторяться.
Сейчас мне весьма влом постить скриншоты, поэтому прошу прощения за назойливость и прочие косяки, и можно тему закрывать.
Аватара пользователя
Parasite
Администратор
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раза
Поблагодарили: 508 раз

Re: Карта заполнения для полигона

Сообщение Parasite »

Papazol писал(а):меня всё устраивает
можно тему закрывать.

Заказ исполнен успешно, вознаграждение переведено исполнителю.
//CLOSED
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение
Закрыто

Вернуться в «Внеочередное исполнение хотелок»