Notes |
|
(0015833)
|
vasketsov
|
04-05-2015 20:29
(edited on: 04-05-2015 20:30) |
|
А вообще какое решение проблемы предполагается? Предлагается? Желаемое?
1. Отображать точно также как остальную часть полигона, то есть, никак не выделяя заливкой наложение частей.
2. Отображать, как если бы сейчас пересекались два разных полигона, то есть, более сильной заливкой, уменьшением прозрачности и т.п.
3. Как-то специально, чтобы было чётко понятно, что тут полигоны пересекаются, а не просто дырка, два-три разных полигона и тому подобные случайности.
4. Другие варианты?
Вариант 3 про специальное отображение имеет весьма простой интерес с моей стороны: надо ли в структуре БД предполагать специальные настройки для самопересечений геометрий? Интуитивно кажется, что поскольку для пересечений двух разных полигонов настроек нет и справляемся на лету, то и тут не надо ничего добавлять, но мало ли, вдруг штрихи какие были бы полезны. Ну и немаловажно, умеет ли нижележащая рисовалка настраиваться на отображение таких вот самопересечений полигонов, или там всё плохо с этим.
|
|
|
(0015835)
|
zed
|
05-05-2015 06:19
|
|
|
|
(0015836)
|
vdemidov
|
05-05-2015 06:36
(edited on: 05-05-2015 06:37) |
|
>п.1, думаю, самое то.
Может быть, но будет вариант 2 так как он на порядок проще реализуется и требует меньше времени на рендеринг. Ну может не меньше, но не требует предварительной обработки всех мультиполигонов.
|
|
|
(0015837)
|
zed
|
05-05-2015 06:40
|
|
Заливать два раза, быстрее чем один? |
|
|
|
>Заливать два раза, быстрее чем один?
Нет, но зато не требуется операций по слиянию полигонов.
Хотя если сделаешь операции объединения и вычитания дырок онлайн при рисовании, то это будет здорово, но ИМХО для испправления бага достаточно просто рисовать каждый из полигонов мультиполигона отдельно. |
|
|
(0015840)
|
zed
|
05-05-2015 07:31
|
|
Вообще, да - п.2 тоже приемлем. |
|
|
|
>достаточно просто рисовать каждый из полигонов мультиполигона отдельно
То есть, если одиночный полигон имеет самопересечения - баг превратится в фичу и останется?
Ок. Это не напрягает. |
|
|
|
Самопересечения это отдельный вопрос и с ним нужно будет что-то делать, особенно они заметны при построении полигонов по пути. Но ИМХО исправлять это нужно не онлайн, а дать инструмент при редактировании полигонов, который сможет это все убрать тем или иным способом. Там еще будут чудеса при отображении полигонов с дырками, типа дырка поверх дырки это уже не дырка. Или дырка вылезающая за основной полигон это еще довесок полигона. Но ИМХО это не так часто происходит в реальной жизни что бы уделять слишком много внимания, а бороться весьма и весьма сложно. |
|
|
(0015864)
|
zed
|
07-05-2015 19:09
|
|
После вот этого коммита мультиполигоны из базы меток стали отображаться нормально. А вот мультиполигон, который рисуется по результатам логических операций, всё ещё "дырявый". |
|
|
|
Ага. Нужно так же и отображение одиночного полигона поправить. |
|