Глава 6. Пространственный анализ 8 глава
Рис. 9.23. Создание полилинии
Способы создания полигона и полилинии аналогичны (последовательно указываются узловые точки объектов). Отличие состоит в том, что при построении полигона первая и последняя узловые точки всегда соединяются отрезком, поскольку полигон – замкнутая фигура.
Для примера создадим на карте города участок озеленения. Для этого надо выделить полигональный слой, представляющий участки озеленения на карте города, включить режим создания полигона, а затем последовательными щелчками мыши указать узловые точки полигона (рис. 9.24). Для завершения рисования объекта нажмите правую кнопку мыши или клавишу Enter.
Рис. 9.24. Создание полигона
В процессе построения полилинии (или полигона) можно открыть контекстное меню (рис. 9.25). Для этого нужно нажать правую кнопку мыши, удерживая при этом нажатой клавишу Shift.
Рис. 9.25. Контекстное меню, открываемое при создании объектов
Команды в этом меню позволяют отменить ввод фигуры (Отменить ввод), завершить ввод фигуры (Закончить) или удалить из фигуры последнюю введенную узловую точку (Удалить последнюю точку).
Эти команды можно также выполнять, не вызывая контекстное меню. Для отмены ввода фигуры достаточно нажать клавишу Esc, для завершения ввода фигуры – клавишу Enter, для удаления последней точки – клавишу BkSp.
При построении полилиний (полигонов) можно использовать выравнивание отрезков на определенный угол относительно предыдущего отрезка (угол выравнивания задается в окне настройки параметров системы). Для этого во время рисования нужно удерживать нажатой клавишу Ctrl.
Если известны точные координаты узловых точек объекта, то можно использовать режим ввода полилиний и полигонов по координатам. Для этого надо выделить слой, в котором должен быть создан объект, включить режим ввода фигур по координатам. В диалоговом окне, которое открывается при выполнении этой команды, нужно ввести координаты узловых точек объекта (рис. 9.26).
Рис. 9.26. Ввод полилинии по координатам
В ситуациях, когда необходимо создавать фигуры определенной формы (например, окружность, эллипс или прямоугольник), можно использовать специальные режимы, предназначенные для создания таких фигур. Рисовать окружности и прямоугольники можно в слое полилиний и в слое полигонов. В слое полилиний такие объекты являются замкнутыми контурами без заливки. 9.3.3. Ввод объектов по классификатору
Ввод фигур на карте можно настроить таким образом, чтобы при создании очередного объекта автоматически устанавливались значения каких-то его атрибутов. Для этого необходимо сначала настроить классификатор, после чего создавать объекты в режиме ввода фигур по классификатору.
Для примера настроим классификатор таким образом, чтобы при создании объектов в слое зданий (на карте города) автоматически устанавливалось значение атрибута Тип здания (Type). Допустим, что этот атрибут в большинстве случаев может принимать одно из трех значений: жилое помещение, нежилое помещение, спортивное сооружение.
Для начала надо открыть окно настройки классификатора, выполнив команду меню Карта| Настройка классификатора…. В этом окне создадим папку классификатора для слоя зданий. Для этого надо нажать кнопку Папка… в окне настройки классификатора. В появившемся окне надо ввести название папки классификатора, краткое описание папки и нажать кнопку ОК.
Теперь создадим новый элемент классификатора. Для этого надо нажать кнопку Элемент… в окне настройки классификатора. В открывшемся диалоговом окне нужно введите имя и описание элемента классификатора (рис. 9.27). Далее надо из выпадающего списка выбрать слой, для которого настраивается классификатор (в данном случае это слой Здания), и тип фигуры в этом слое.
Рис. 9.27. Создание элемента классификатора
В списке Атрибуты отображаются все атрибуты выбранного слоя. Для тех атрибутов, значения которых должны заполняться автоматически при создании объекта, необходимо ввести в этом списке нужные значения. В данном примере объекты в слое здания классифицируются по одному атрибуту (по типу зданий). Поэтому введёме в поле Type значение атрибута, которое определяет здание как жилое, после чего нажмём кнопку ОК.
Аналогичным образом нужно создать еще два элемента классификатора, определяющие нежилые здания и спортивные сооружения. В результате в окне настройки будут представлены все созданные элементы классификатора (рис. 9.28).
Чтобы изменить настройки элемента классификатора, нужно выделить его в списке и нажать кнопку Изменить…. Чтобы удалить элемент из классификации надо нажать кнопку Удалить.
Кроме ручного формирования классификатора, можно автоматически построить дерево классификатора на основе структуры слоев карты. Для этого надо нажать кнопку Собрать….
Теперь рассмотрим собственно ввод фигур по классификатору. Для примера нарисуем на карте ряд зданий, каждое из которых является жилым домом. Чтобы не выставлять для каждого вновь созданного объекта значение атрибута Тип здания, используем режим ввода фигур по классификатору. Для этого надо включить режим ввода фигур по классификатору, затем в открывшемся окне выбрать элемент классификатора Жилой дом и нажать кнопку ОК (рис. 9.29).
Рис. 9.28. Окно настройки классификатора
Далее нужно нарисовать на карте здание. После этого значение атрибута Тип здания у этого объекта автоматически установится равным living. Если для слоя задана визуализация по значения данного атрибута, то созданный объект сразу отрисуется на карте тем цветом, который был задан для жилых зданий.
Рис. 9.29. Выбор элемента классификатора
9.3.4. Геометрические и геодезические построения
При создании объектов на карте могут быть использованы различные геометрические построения. Они бывают необходимы, если в процессе создания объекта нужно вычислять координаты его узловых точек на основе узловых точек других объектов, уже созданных точек в данном объекте или произвольных точек на карте.
Например, можно построить очередной сегмент полилинии или полигона заданной длины и под определенным углом к предыдущему сегменту, или использовать в качестве четвертой узловой точки полигона точку, являющуюся четвертой вершиной параллелограмма, построенного по трем предыдущим точкам.
Способ задания очередной узловой точки выбирается из контекстного меню. Следует заметить, что его можно вызвать только в процессе создания объекта (то есть должна быть введена хотя бы одна узловая точка полилинии или полигона).
Чтобы открыть контекстное меню, нажмите правую кнопку мыши, удерживая при этом нажатой клавишу Shift (рис. 9.30).
Рис. 9.30. Контекстное меню для выбора способа задания узла объекта
При выполнении в контекстном меню соответствующей команды открывается диалоговое окно, в котором настраиваются параметры выбранного способа задания узла объекта.
Если известны точные координаты очередного узла полилинии или полигона, то можно использовать ввод узловой точки по известным координатам. Допустим, что при рисовании улицы на карте города известна координата очередной узловой точки. Откроем контекстное меню, нажав правую кнопку мыши и удерживая до этого нажатой клавишу Shift.
Затем выберем в меню команду По координатам…, при этом откроется диалоговое окно для ввода координат точки (рис. 9.31). Далее надо ввести в поля X и Y известные координаты очередной узловой точки объекта. Указанная точка будет отображаться на карте розовым цветом.
Если нажать кнопку Закончить, того очередной сегмент фигуры был построен, а диалоговое окно закроется.
Рис. 9.31. Задание координат очередной узловой точки объекта
Если следующую узловую точку тоже нужно вводить по координатам, то надо нажатье кнопку Продолжить. Тогда очередной сегмент будет построен, но окно закрыто не будет, и можно будет задать следующую точку.
Аналогичным способом выполняются и другие геометрические и геодезические построения, например, засечки. При этом также появляется диалоговое окно, как на рис. 9.31, но соответствующее виду построения. Эти окна являются такими же, как в геодезическом редакторе (см. п. 8.4). 9.4. Редактирование объектов
Любые линейные и полигональные объекты в ГИС IndorGIS состоят из узловых точек (или узлов) и сегментов. Сегмент – это линия, соединяющая две соседние узловые точки объекта.
Форму объекта можно изменить, перемещая его узловые точки, добавляя новые точки к объекту, или, удаляя существующие точки.
Редактирование узловых точек осуществляется в специальном режиме Редактирование фигур. Этому режиму соответствует кнопка на панели инструментов Режимы работы (рис. 9.32).
Рис. 9.32. Выбор режима редактирования фигур
Процесс редактирования объекта может находиться в одной из двух фаз:
1. Фаза редактирования узловых точек объекта. В этом состоянии на выделенном объекте визуализируются узловые точки и так называемые точки настройки (рис. 9.33). Перемещая узловые точки объекта, можно производить коррекцию геометрии фигуры. При перемещении точки настройки создается новая узловая точка объекта. В фазе редактирования узловых точек может находиться одновременно только один объект.
Рис. 9.33. Объект в фазе редактирования узловых точек
2. Фаза блочных операций. В фазе блочных операций может находиться один или несколько объектов. Выделенный блок при этом отрисовывается с пунктирным прямоугольником вокруг, а также со специальными управляющими точками. При перетаскивании мышкой круглых точек происходит вращение объекта, при перемещении квадратных точек происходит растяжение/сжатие объекта, а при перемещении прямоугольных точек меняется угол наклона объекта. Кроме этого, в фазе блочных операций все выделенные объекты (или один объект) можно с помощью мыши синхронно перемещать по карте (рис. 9.34).
Чтобы начать редактирование узловых точек объекта, нужно выделите слой, которому принадлежит объект, включить режим Редактирование фигур и щелкнуть мышью на объекте.
Рис. 9.34. Объект в фазе блочных операций
Объект перейдет в фазу редактирования узловых точек. При этом данный объект станет «выделенным».
Для того чтобы выделить на карте объект, принадлежащий любому слою (то есть независимо от того, выделен слой, которому принадлежит объект, или нет), нужно удерживать нажатыми клавиши Shift+Ctrl+Alt при указании мышью объекта в режиме Редактирование фигур.
Чтобы перейти в режим выполнения блочных операций, нужно в фазе редактирования узловых точек еще раз щелкнуть мышью на объекте (но не на узловых точках или точках настройки).
Выделенный блок может состоять из нескольких объектов. Чтобы выделить несколько объектов, нужно щелкать на них мышью, удерживая нажатой клавишу Shift (рис. 9.35). Чтобы снять выделение объектов, нужно щелкнуть мышью за пределами выделенного блока.
Рис. 9.35. Несколько выделенных объектов
9.4.1. Редактирование узловых точек объекта
В режиме редактирования узловых точек можно менять форму фигуры путем перемещения узловых точек или точек настройки, добавления новых узловых точек к фигуре или удаления уже существующих. Чтобы изменить положение узловой точки объекта, надо нажать на ней кнопку мыши и, удерживая ее нажатой, переместить точку в нужное место, после чего отпустить кнопку мыши (рис. 9.36).
Рис. 9.36. Перемещение узловой точки объекта
Между любыми соседними узловыми точками объекта находится точка настройки, которая изображается с маленьким знаком «+» внутри. При перемещении точки настройки мышкой создается новая узловая точка объекта (рис. 9.37).
Рис. 9.37. Перемещение точки настройки объекта и создание нового узла
Для удаления узловых точек необходимо воспользоваться командой в контекстном меню. Для этого надо подвести указатель мыши к узловой точке на объекте, которая должна быть удалена, и открыть контекстное меню щелчком правой кнопки мыши. Затем надо выбрать в подменю Точки команду Удалить точку (рис. 9.38). Если при вызове контекстного меню курсор мышки не попал в малую окрестность узловой точки, то команда Удалить точку будет недоступна.
Рис. 9.38. Контекстное меню для редактирования узловых точек
Перемещая узловые точки с помощью мыши, можно указать только их приблизительное положение на карте. Задавать точные координаты узловых точек можно в специальном окне «Инспектор объектов». Оно предназначено для редактирования геометрических и атрибутивных значений графических объектов на карте. Что воспользоваться инспектором, нужно включить режим Редактирование фигур, указать на карте нужный объект и открыть окно инспектора объектов, выполнив команду меню Вид|Инспектор объектов или нажав сочетание клавиш Ctrl+B.
В инспекторе объектов отображаются свойства текущего выделенного на карте объекта (рис. 9.39). На закладке Свойства можно редактировать геометрические параметры объекта. В поле Число точек отображается общее количество узловых точек в контуре объекта, ниже в полях Точка [i]: X,Y – координаты всех узловых точек.
Рис. 9.39. Редактирование координат узловых точек в инспекторе объектов
Если щелкнуть мышью в поле со значением координаты какой-либо точки, то при этом на карте подсвечивается точка, координата которой выделена в инспекторе объектов (см. рис. 9.39).
Если ввести в поля Точка 2: X и Точка 2: Y точные координаты узловой точки, то на карте точка переместится в соответствии с указанными координатами. 9.4.2. Перемещение, вращение, растяжение объектов
Когда объект находится в фазе выполнения блочных операций, его можно перемещать с помощью мыши по карте, поворачивать на произвольный угол, менять размер объекта по вертикали или по горизонтали.
Рассмотрим применение блочных операций.
Пусть, например, некоторые объекты выделены, и они находятся в фазе выполнения блочных операций.
Чтобы переместить объект в новое место, нужно нажать кнопку мыши на объекте и, не отпуская ее, переместить объект в нужное место, после чего отпустить кнопку (рис. 9.40).
Рис. 9.40. Перемещение объекта
Если подвести указатель мыши к круглой управляющей точке () и нажать кнопку мыши, то, не отпуская ее, можно повернуть объект на произвольный угол. В конце кнопку мышки надо отпустить.
Чтобы изменить размеры объекта (растянуть или сжать по горизонтали или горизонтали), нужно подвести указатель мыши к квадратной управляющей точке (), нажать кнопку мыши и, не отпуская ее, переместить указатель в нужном направлении. Если при этом удерживать нажатой клавишу Ctrl, то пропорции размеров объектов сохранятся.
Чтобы изменить угол наклона объекта, надо подвести указатель мыши к прямоугольной управляющей точке (), нажать кнопку мыши и, не отпуская ее, переместить указатель по горизонтали или вертикали. 9.4.3. Редактирование частей фигур
Для того чтобы переместить или повернуть одновременно только несколько узловых точек объекта, а не всю фигуру, можно использовать режим Редактирование частей фигур. Этот режим становится доступным, если на карте выделен ровно один объект (рис. 9.41).
Рис. 9.41. Выбор режима редактирования частей фигур
Чтобы начать изменение нескольких узловых точек фигур нужно включить режим Редактирование фигур и указать мышью один объект на карте. Затем надо включить режим Редактирование частей фигур. Теперь надо указать узловые точки выбранного объекта. Для этого нужно щелкать на них мышью, удерживая нажатой клавишу Shift (рис. 9.42).
Рис. 9.42. Редактирование частей объекта
Если не требуется избирательно выделять узлы объекта, можно окружить нужные узлы рамкой (прямоугольником) выделения. Это избавляет от необходимости попадать указателем мыши в узел, потому что достаточно, чтобы он просто попал в рамку.
Выделенные узлы отображаются с пунктирным прямоугольником вокруг, а также со специальными управляющими точками (аналогично объекту в фазе выполнения блочных операций). Перемещая управляющие точки, можно повернуть выделенный блок, изменить его размер или угол наклона. 9.4.4. Привязка к сетке
При рисовании фигур на карте можно использовать вспомогательную сетку. Она предназначена для выравнивания и точного позиционирования объектов на карте. Если привязка к сетке включена, то при создании или редактировании объектов на карте координаты всех узловых точек выравниваются по сетке, то есть узловые точки как бы «прилипают» к узлам сетки. Привязку к сетке удобно использовать при рисовании на карте различных диаграмм, схем и т.п.
Шаг сетки можно определить одинаковый для всех слоев карты. Но в тех случаях, когда в разных слоях объекты рисуются с разной точностью, можно настраивать индивидуальные параметры сетки для каждого слоя.
Команды для настройки параметров сетки находятся на панели инструментов Настройка карты (рис. 9.43).
Рис. 9.43. Панель инструментов для управления сеткой
Чтобы включить режим отображения сетки, надо нажать на кнопку Показывать сетку. При нажатии на кнопку появляется список, в котором можно выбрать стиль отображения сетки на карте (рис. 9.44). Также можно на этой панели указать размер и цвет сетки.
Рис. 9.44. Варианты отображения сетки на карте
После этого на карте будет отображаться сетка в соответствии с заданными настройками. При этом узловые точки объектов при вводе и их перемещении будут попадать точно в узлы сетки (рис. 9.45).
Рис. 9.45. Редактирование узловых точек объекта с привязкой к сетке 9.4.5. Подтяжка объектов к другим объектам на карте
Подтяжка объектов значительно упрощает манипуляции мышью при вводе и редактировании фигур на карте. Если установлена подтяжка, то при редактировании узловых точек объекта (например, при перемещении), они «подтягиваются» точно к контурам или узлам других объектов. Причем, подтяжка объектов конкретного слоя может осуществляться не ко всем объектам на карте, а только к объектам в указанных слоях.
Например, можно использовать подтяжку объектов, если необходимо создавать полилинии таким образом, чтобы начальная точка очередной линии точно совпадала с конечной точкой предыдущей линии. Также подтяжка может использоваться при изображении линий инженерных коммуникаций, подходящих к зданиям. В этом случае начальная или конечная узловая точка линии должна лежать на контуре здания.
При задании параметров подтяжки объектов указываются слои (по приоритету), к которым разрешена подтяжка, и наибольший сдвиг подтяжки. Это значение определяет диапазон, в который нужно попасть указателем мыши, чтобы узел «притягивался» к контурам и узлам объектов в указанных слоях. 9.4.6. Работа с многоконтурными объектами
В системе IndorGIS есть возможность создавать полиполилинии и полиполигоны.
Полиполилиния – это объект, состоящий из двух или нескольких полилиний, но имеющий один набор значений атрибутов в базе данных.
Полиполигон – это объект, состоящий из двух или нескольких полигонов, но имеющий один набор значений атрибутов в базе данных. Например, полиполигоном на карте может быть представлено здание, состоящее из отдельных корпусов и имеющие дырки – внутренние дворы.
Графическое представление такого здания – это несколько отдельных контуров, но атрибутивное описание для них одно (например, адрес, тип здания и т.д.).
Создать полиполилинию или полиполигон можно двумя способами:
1. Выделить полигоны (или полилинии), которые являются частями одного объекта, и выполнить команду объединения в полиполигон (или полиполилинию). При этом если для выделенных объектов в базе данных были записаны значения атрибутов, то после выполнения операции объединения в полиполигон или полиполилинию результирующему объекту присваиваются значения атрибутов того объекта, на котором было вызвано контекстное меню.
2. Нарисовать на карте первый контур объекта (полилинию или полигон), затем вызвать из контекстного меню созданного объекта команду создания нового контура и нарисовать следующий контур объекта и т.д. 9.4.7. Поиск некорректных фигур на карте
Для проверки корректности нарисованных на карте фигур можно использовать специальную команду, позволяющую найти и выделить на карте все фигуры, некорректные в некотором смысле. Некорректные фигуры можно искать во всем множестве объектов какого-либо слоя (линейного или полигонального) или только среди выделенных в слое объектов.
Для поиска некорректных фигур в каком-либо слое карты, нужно вызвать в меню Фигуры команду Выделение| Специальное выделение| Некорректные фигуры…. По этой команде открывается диалоговое окно, в котором указываются критерии поиска некорректных фигур на карте (рис. 9.46).
Рис. 9.46. Задание параметров поиска некорректных фигур на карте
В нижней части окна в разделе Где искать указывается, где нужно производить поиск некорректных фигур: во всем слое или только среди выделенных на данный момент объектов на карте. Рассмотрим критерии, по которым может осуществляться поиск некорректных фигур на карте.
1. Количество узловых точек в контуре. Этот критерий позволяет найти все объекты в слое, у которых количество узловых точек меньше или больше, чем указанные значения.
2. Угол между смежными сегментами. В этом случае будут найдены все объекты в слое, имеющие смежные сегменты, угол между которыми меньше указанного значения.
3. Длина сегментов в контуре. Так можно найти все объекты, у которых есть сегменты с длиной меньшей, чем указанное значение.
4. Самопересечение контура. Вы можете найти те объекты в слое, которые имеют самопересекающиеся контуры.
5. Совпадающие вершины. При поиске некорректных фигур совпадающими считаются такие узловые точки объекта, расстояние между которыми меньше, чем некоторое заданное значение. Этот критерий позволяет найти те объекты в слое, у которых есть вершины, совпадающие с указанной в поле ввода точностью.
6. Размер объемлющего прямоугольника. Это критерий позволяет можно найти все объекты в слое, для которых размер объемлющего прямоугольника меньше, чем заданное значение. В качестве размера объемлющего прямоугольника используется длина его большей стороны.
7. Площадь фигуры. В этом случае будут найдены все объекты слоя, площадь которых меньше, чем указанное значение.
8. Совпадающие фигуры. Это критерий позволяет найти в слое все объекты, совпадающие с точностью, указанной в поле ввода. При этом можно указать, чтобы одна из совпадающих фигур оставалась невыделенной. Также можно задать, чтобы выделялись только фигуры одного типа.
9. Контур, находящийся внутри другой фигуры. В слое могут быть найдены объекты, которые расположены внутри контура какого-либо другого объекта.
В этом окне можно один или несколько критериев для поиска некорректных объектов. Если отмечены несколько критериев, то будут найдены объекты, удовлетворяющие хотя бы одному заданному критерию. 9.4.8. Изменение геометрии фигур в инспекторе объектов
В системе IndorGIS для редактирования геометрических значений графических объектов на карте можно использовать специальное окно Инспектор объектов. Чтобы открыть это окно, нужно выполнить в меню Вид команду Инспектор объектов или нажать кнопку на панели инструментов Атрибуты. Инспектор объектов позволяет просматривать и редактировать объекты, которые выделены на карте в режиме Редактирование фигур (рис. 9.47).
Окно инспектора объектов содержит две закладки: Свойства и Атрибуты, на которых можно редактировать соответственно геометрическую и атрибутивную информацию.
В верхней части окна находится выпадающий список. Он содержит все выделенные на карте объекты. При нажатии кнопки, расположенной рядом со списком, выбранный в списке объект (или группа объектов) подсвечивается на карте. Над выпадающим списком расположена панель инструментов инспектора объектов. Кнопка удаляет выбранный в списке объект. При нажатии кнопки на карте выделяется единственный объект, выбранный в выпадающем списке. Кнопка включает и выключает режим отображения на карте текущей узловой точки и сегмента.
Рис. 9.47. Инспектор объектов
Геометрическая информация выбранного в списке объекта отображается на закладке Свойства. Для демонстрации этой закладки рассмотрим свойства линейных объектов, которые можно редактировать в инспекторе объектов (рис. 9.48):
(а) (б)
Рис. 9.48. Свойства простых (а) и трехмерных (б) полилиний
Число контуров. Задаёт количество контуров, входящих в состав полилинии.
Число точек. Задаёт количество узловых точек, входящих в соответствующий контур полилинии.
Точка [i]: X,Y. Данные параметры задают положение узловых точек полилинии на карте.
Точка [i]: Z. Эти параметры определяют высоту узловых точек полилинии над уровнем земли (доступно только для трёхмерных полилиний).
Точка [i]: Мера. Эти параметры предназначены для задания некоторых дополнительных параметров составляющих полилинию точек (доступно только для трёхмерных полилиний и для полилиний с мерой).
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|