Полигон на полигоне - как правильно делать острова, парки...
Добавлено: 27 янв 2009, 03:00
В этом сообщении рассмотрим вопрос правильного однозначного рисования одного объекта типа полигон, внутри другого объекта с типом полигон.
Пример ситуаций на карте - дом(а) на квартале, озеро в лесу, ставок в парке, зом в парке и т.д.
для удобства использовалась бесплатная версия редактора MapEdit ++ (с некоторыми расширенными функциями, по сравнению с версией оригинала - GPSMapEdit)
можно взять здесь:
http://sourceforge.net/projects/gmeaddons/
Еще возможно понадобиться установить дополнительные библиотеки для MapEdit++, их можно взять здесь:
http://travelgps.com.ua/soft/vcredist_x86.zip
1. рисуем полигон парка, для примера
2. рисуем прямоугольник, выбираем инструмент
3. попробуйте сами
4. присваиваем тип объекту
5. выбираем сначала полигон из которого будет вычитаться область другого полигона
выбрали, нажали Shift, и не отпуская клавишу Shift выбираем, тот объект, под который будет вырезаться дырка.
Делаем операцию вычитание полигонов
Можно/нужно проверить что ничего не напутали и все получилось правильно.
смотрим на результат - выделяется только парк
для того чтобы не было дырки надо выполнить опцию
Merge inner polygons - соединить с внутренними
смотрим что получилось
и видим правильный результат
Пример ситуаций на карте - дом(а) на квартале, озеро в лесу, ставок в парке, зом в парке и т.д.
для удобства использовалась бесплатная версия редактора MapEdit ++ (с некоторыми расширенными функциями, по сравнению с версией оригинала - GPSMapEdit)
можно взять здесь:
http://sourceforge.net/projects/gmeaddons/
Еще возможно понадобиться установить дополнительные библиотеки для MapEdit++, их можно взять здесь:
http://travelgps.com.ua/soft/vcredist_x86.zip
1. рисуем полигон парка, для примера
2. рисуем прямоугольник, выбираем инструмент
3. попробуйте сами
4. присваиваем тип объекту
5. выбираем сначала полигон из которого будет вычитаться область другого полигона
выбрали, нажали Shift, и не отпуская клавишу Shift выбираем, тот объект, под который будет вырезаться дырка.
Делаем операцию вычитание полигонов
Можно/нужно проверить что ничего не напутали и все получилось правильно.
смотрим на результат - выделяется только парк
для того чтобы не было дырки надо выполнить опцию
Merge inner polygons - соединить с внутренними
смотрим что получилось
и видим правильный результат