Глава 2. Векторные объекты БПД, их создание и редактирование.

Презентация:



Advertisements
Похожие презентации
Урок 3. Формы представления данных (таблицы, формы, запросы, отчеты)
Advertisements

Схема данных в Access Преподаватель: Французова Г.Н.
Инструкция по созданию базы данных в Microsoft Access
СУБД Microsoft Access 2003 РАЗРАБОТКА БАЗЫ ДАННЫХ (Таблицы и связи между ними)
6.5. Создание реляционной БД в среде СУБД ACCESS Общие сведения Реляционные отношения в СУБД ACCESS представлены в двух формах: в виде таблиц и в виде.
Что такое связи между таблицами В реляционной базе данных связи позволяют избежать избыточности данных. Например, в ходе создания базы данных, содержащей.
Создание базы данных с помощью Конструктора Создание базы данных без помощи Мастера Теперь попробуем создать базу данных без помощи Мастера. При запуске.
Работа с таблицами в MS Access. Таблицы Единицей хранящейся в БД информации является таблица. Таблица представляет собой совокупность строк и столбцов,
Связи между таблицами являются необходимым элементом структуры БД. Для того, чтобы связь была возможна, таблицы должны иметь общие поля. Чаще всего в одной.
ДАЛЕЕ БАЗА ДАННЫХ ACCESS Проектирование базы данных Создание базы данных Создание базы данных без помощи мастера Таблицы Создание таблицы в режиме конструктора.
Выполнение запросов, создание и редактирование отчета MS Access.
Общие сведения о Microsoft Access. позволяет хранить большие массивы данных, обрабатывать их, автоматизировать часто выполняемые операции, разрабатывать.
База данных – это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих одинаковым набором свойств. Типы.
Основные возможности MS ACCESS. CУБД Access - Представляет из себя программное средство, при помощи которого можно создать многотабличную реляционную.
Электронная Россия ( ), ЭР-2003 Лекция # 1-4 СУБД Microsoft Access 2000 РАЗРАБОТКА БАЗЫ ДАННЫХ (Таблицы и связи между ними)
Автор презентации: Парфенова Наталья Владимировна Место работы: ГБОУ СПО «МК 5 ДЗМ» г.Москва Должность автора: преподаватель информатики.
Из чего состоит "электронный офис". Запуск программ Office.
Интерфейс текстового процессора Microsoft Word. С помощью ленты можно быстро находить необходимые команды (элементы управления: кнопки, раскрывающиеся.
1 Создание и редактирование таблиц (продолжение) Занятие 8.
Обучение Microsoft ® Access ® 2010 Создание таблиц для базы данных.
Транксрипт:

Глава 2. Векторные объекты БПД, их создание и редактирование

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

ГИС расширяет технологию баз данных, добавляя в нее обработку пространственных данных. Геометрическая модель ArcInfo является основанием для отображения, редактирования и анализа дискретных пространственных объектов (ПО). В этой главе, помимо традиционных (непространственных) элементов баз данных рассматриваются элементы, основанные на модели геометрических объектов. Поскольку данный курс рассчитан на один семестр, здесь опущено описание специального вида аннотаций – указателей размеров, а также геометрических и логических сетей. При необходимости эти темы могут быть пройдены самостоятельно при использовании справки (для владеющих английским языком) или дополнительной литературы, список которой приводится в конце пособия.

Взаимодействие базы геоданных с другими форматами Помимо базы географических данных ArcGIS поддерживает файловые системы, доставшиеся ей от прошлого. Модель САПР Самым древним форматом можно считать модель данных Системы автоматического проектирования (САПР). Эта модель зародилась тогда, когда компьютеры поддерживали графическое отображение на мониторах только в линиях, а растровые изображения печатались на быстродействующих автоматических цифровых печатающих устройствах АЦПУ. При этом нужная степень зачернения «клетки» на бумаге достигалась наложением нескольких литер при печати строки в несколько проходов. Модель САПР использовала двоичные файлы, хранящие точки, линии и полигоны. В этих файлах содержалась и некоторая атрибутивная информация, но основным представлением атрибутов были слои карт и надписи.

Модель покрытия В 1981 г институт ESRI обнародовал второе поколение – модель данных покрытия. Это было мощное достижение, поскольку эта модель поддерживала одновременное хранение атрибутивной и геометрической информации. При этом пространственные данные хранятся в двоичных файлах, а атрибутивные данные – в таблицах, в которых число записей равно числу векторных объектов, а связь между ними поддерживается с помощью общего поля. Второе достоинство этой модели – возможность хранения топологических связей между векторными объектами. Это означает, что запись пространственных данных для каждой линии содержит информацию о том, какие узлы ее образуют, и, как следствие, какие линии связаны. Запись содержит также информацию о том, какие полигоны находятся справа и слева от линии. Атрибутивные таблицы можно связывать с таблицами внешних баз данных. Покрытия содержат первичные, сложные и вторичные (производные) типы объектов. Первичными объектами в покрытиях являются точки подписей (аннотаций), дуги и полигоны. Сложные объекты маршруты/секции и регионы строятся из этих первичных типов объектов. Покрытия могут содержать также производные объекты: засечки (tics), векторы смещений (links), и аннотации. Засечки и соединения не представляют географические объекты, а используются для работы с покрытиями. Аннотации (подписи) используются для снабжения текстом географических объектов на картах. Они имеют все признаки ПО. Покрытия хранятся в папках. Папка покрытия содержит набор файлов, в которых хранится информация об объектах покрытия (координаты, топология и т.п.). Атрибуты объектов покрытия хранятся в таблицах атрибутов объектов в папке INFO.

Модель шейп-файлов Далее нельзя не упомянуть интенсивно используемые до сих пор шейп-файлы – файлы, содержащие векторную и атрибутивную информацию, но не содержащие данных о топологии. Шейп-файлы проще, чем покрытия, потому что они не хранят полные топологические ассоциации среди различных объектов и классов объектов. Каждый шейп-файл хранит объекты, принадлежащие к единственному классу ПО. Шейп-файлы имеют два типа точечных объектов: точки и кластеры точек. Они имеют линейные объекты, которые могут быть простыми линиями или состоящими из нескольких частей - полилиниями. Они имеют также площадные объекты, которые являются простыми или состоящими из нескольких областей и называются полигонами. Точечные шейпы являются просто единичными точечными объектами, такими как колодцы или памятники. Шейпы Multipoint (кластеры точек) являются совокупностью точек, которые все представляют один объект. Группа маленьких островов может быть представлена как единый шейп кластер точек. Линейные шейпы могут быть простыми непрерывными линиями, как линия разлома на карте. Они могут быть также разветвляющимися, как, например, реки. Линейные формы могут также состоять из разрывных частей олигонные шейпы могут быть простыми областями, такими как единичный остров. Они могут быть также составными областями, такими как различные острова, представляющие единичный штат. Полигонные шейпы могут перекрываться, однако шейп-файл не хранит топологические связи между ними. Область обслуживания для двух магазинах может быть представлена как перекрывающийся полигонный шейп Шейп-файлы хранятся в папках. Шейп-файл состоит из множества файлов векторных данных в шейп-файле и dBASE.dbf –файлах, содержащих атрибуты объектов. Каждый составляющий файл разделяет имя шейп-файла.

Шейп-файл содержит шейпы только одной геометрии: точку, кластер точек, линию, полигон. Когда Вы просматриваете папку шейп-файлов в ArcCatalog, Вы видите шейп-файлы как самостоятельные классы объектов.

В 21 веке появилась новая объектно-ориентированная модель данных – база географических данных, способная описывать естественное поведение и взаимосвязи ПО, которая и является предметом обсуждения всей книги.

Классы объектов (непространственных). В базе географических данных ArcGIS простая таблица называется объектным классом и отображается в виде нижеприведенного значка Объектный класс – это таблица, в которой хранятся объекты с заданным поведением. Строки таблицы соответствуют объектам, а столбцы – атрибутам объектов. Импорт существующей таблицы 1.Импорт таблицы в базу геоданных осуществляется с помощью ArcCatalog. 2.Запустите ArcCatalog, если он еще не запущен, и перейдите к «Учебные данные\ 0201\Montgomery.mdb» 3.В дереве Каталога нажмите правой клавишей Montgomery.mdb и выберите Импорт\Таблица (одиночная).

Перейдите к местоположению таблицы owners.dat и введите ее в БГД, выполнив все требования возникающего диалога. Назовите созданный класс объектов «Владельцы».

Просмотр таблицы Просмотреть атрибутивную таблицу можно и в ArcMap и в ArcCatalog. Поскольку опций для работы с таблицами в ArcMap больше, то откройте пустой ArcMap и с помощью кнопки «Добавить данные» посетите папку «Учебные данные» и откройте «0201\ Montgomery.mdb\Владельцы». Имя таблицы (без расширения) немедленно появится в таблице содержания. 1. Нажмите правой клавишей имя таблицы и в появившемся контекстном меню выберите «Открыть» (Open).

В появившемся окне таблицы просмотрите названия и содержание полей. После этого нажмите кнопку Опции. Не закрывайте таблицу, и перейдите к выполнению атрибутивного запроса. Вашей ближайшей задачей будет: в объектном классе «Владельцы» Найти всех собственников земельных участков, имена которых начинаются на букву «S».

Атрибутивный запрос 1.В появившемся меню после нажатия кнопки Опции нажмите «Выборка по атрибутам». Появится окно Конструктора запросов. При этом часть запроса сформирована автоматически и записана над нижним окном:SELECT * FROM Владельцы WHERE. В этом нижнем окне Вам нужно сформировать условие (после слова WHERE), которое на требуемом диалекте SQL будет выглядеть примерно так: [OWNER_NAME] LIKE 'S*'

2. Нажмите дважды на "OWNER_NAME" в окне Поля и затем кнопку с текстом Like. В нижнем окне получим текст: [OWNER_NAME] LIKE. 3. Чтобы посмотреть синтаксис ввода значений нажмите кнопку «Получить уникальные значения» и убедитесь, что символьные значения заключаются в одинарные кавычки. 4. Ведите конец текста условия любым способом [OWNER_NAME] LIKE 'S*', и нажмите кнопку «Проверить». 5. Добейтесь успешного завершения проверки синтаксиса запроса и нажмите кнопку «Применить». В окне таблицы нажмите кнопку «Выборка» и убедитесь, что выбраны 293 записи. Обязательно прочтите справку, выдаваемую после нажатия кнопки «Справка» в окне «Конструктора запросов», даже если Вы плохо знаете английский язык. Вернитесь в окно «Таблицы».

Добавление и удаление поля таблицы 1.Нажмите кнопку Опции и выберите Добавить поле. В появившемся диалоге, заполните поля, как показано на нижеприведенном рисунке.

2. Нажмите ОК и убедитесь, что в правую сторону окна таблицы добавлено вещественное поле с названием ДОХОД. 3. Подведите курсор под название этого поля и нажмите правой клавишей. 4. В контекстном меню поля нажмите «Удалить поле». Вновь созданное поле удаляется.

Редактирование таблицы Любые изменения, касаются ли они геометрии или табличных значений в базе геоданных, должны начинаться с установки соответствующего режима редактирования. Эта установка осуществляется с помощью инструментальной панели Редактор (Editor). Если Вы его не видите в главном окне ArcMap, то войдите в главное меню Вид\Инструментальные панели и убедитесь, что галочка против Editor установлена. Нажмите рамку с галочкой несколько раз (включая и выключая панель), чтобы обнаружить ее в главном окне ArcMap. 1. Нажмите раскрывающую стрелку Редактора и выберите «Начать редактирование». Нажмите эту кнопку еще раз и обратите внимание, что отключенные до этого команды «Остановить редактирование» и «Сохранить изменения» становятся активными. Это означает, что после использования режим редактирования обязательно следует закрыть. 2.Откройте таблицу. Вы обнаружите, что рядом с кнопкой «Опции» появилось изображение карандаша, напоминающее о том, что таблица находится в режиме редактирования. 3.Нажмите любое значение и начинайте исправлять его. Обратите внимание, что поле OBJECTID не редактируется (оно создается и заполняется автоматически). Закройте окно таблицы и нажмите правой клавишей на названии таблицы, откройте окно свойств таблицы и отключите видимость этого поля. 4.Закройте режим редактирования, а изменения не сохраняйте.

Изменение имени поля Изменять имя поля нет нужды. Вместо этого можно изменить алиас (псевдоним) поля, так как в ArcMap отображаются только алиасы. Откройте окно диалога свойств таблицы и измените алиасы полей на русские названия. Добавление и удаление записи Для добавления записи нужно войти в режим редактирования и перейти на последнюю запись. Последняя запись в этом режиме всегда пустая (добавленная). Для удаления выберите нужные записи любым способом и нажмите кнопку на главной инструментальной панели (или в главном меню Правка - Edit нажмите Удалить - Delete).

Создание новой таблицы Создание объектного класса (таблицы), как и импорт ее в базу геоданных, осуществляется с помощью ArcCatalog. Запустите ArcCatalog, если он еще не запущен, и перейдите к папке «Учебные данные\ Montgomery.mdb» В дереве Каталога нажмите правой клавишей Montgomery.mdb и выберите Новый\Таблицы. Создание полей, названий полей и их алиасов совершенно прозрачно и легко узнается из соответствующих диалогов. Эти операции оставляются для самостоятельной проработки.

Классы пространственных объектов В базе географических данных ArcGIS таблицы одновременно с геометрией и атрибутами объектов называются классами пространственных объектов (ПО) и отображаются в виде нижеприведенных значков. Класс точечных ПО – это собрание простых ПО с геометрией точки Класс линейных ПО – это собрание простых ПО с геометрией полилинии Класс полигональных ПО – это собрание простых ПО с геометрией полигона

Так как работа с классами ПО во многом похожа на работу с объектным классом, опишем только некоторые операции.

Импорт существующего класса пространственных объектов Импорт таблицы в базу геоданных осуществляется с помощью ArcCatalog. 1.Запустите ArcCatalog, если он еще не запущен, и перейдите к папке «Учебные данные\0201\Montgomery.mdb» 2.В дереве Каталога нажмите правой клавишей Montgomery.mdb и выберите Импорт\Класс пространственных объектов (одиночный). Перейдите к местоположению какого-либо класса (в другой базе данных) и введите его в БГД Montgomery.mdb, выполнив все требования возникающего диалога. Как можно видеть, аналогия с объектным классом очень большая.

Редактирование класса пространственных объектов Редактирование любых объектов БГД обычно осуществляется в ArcMap. 1. Войдите в папку «Учебные данные\0202», введите карту Осевые_линии_дорог.mxd. Вы получите фрейм данных «Дорожная сеть» 2. По слою «Названия дорог» найдите с помощью запроса авеню Estonia Ave. Вы увидите, что один из сегментов осевой линии этой авеню отсутствует (второй снизу). Это особенно заметно, если включить все слои. Нужно восстановить недостающий сегмент. 3. Нажмите раскрывающую стрелку Редактора и нажмите «Начать редактирование». В рамке этой панели «Задачи» установите «Создание нового объекта», а в рамке «Цель» - Road centerlines. Чтобы Ваш новый сегмент математически точно совпал с вершинами других сегментов, представляющих авеню Estonia Ave нужно установить соответствующий режим замыкания. Удаление объектов из выборки Чтобы удалить объекты из выборки нажмите клавишу Delete на клавиатуре.

4. Нажмите раскрывающую стрелку Редактора снова и выберите Замыкание (Snapping). В появившемся окне поставьте галочку в строке Road centerlines и столбце Vertex. Закройте это окно.

5. Выберите инструмент рисования Карандаш и подведите курсор под любую точку соединения. Вы заметите, что курсор на точках соединения «залипает». Это действует установленный режим замыкания. 6. Соедините соответствующие сегменты (снизу вверх) и нажмите F2, чтобы закончить рисование (скетч). Закончите редактирование и сохраните изменения. Единственно, что Вы еще не сделали – не установили атрибуты данного сегмента. Поэтому снова войдите в режим редактирования и выберите инструмент редактирования

7.Нажмите этим инструментом вновь созданный сегмент, чтобы его выделить. Откройте атрибутивную таблицу слоя и нажмите кнопку Выбранные (Selected). Вы получите запись с номером 2971, описывающую данный сегмент. Измените атрибут имени на Estonia Ave. Закройте все с сохранением результатов. Создание класса пространственных объектов Создают ПО обычно в ArcCatalog. В БГД можно создать самостоятельный класс ПО и в составе набора классов объектов. 1.Нажмите правой клавишей название БГД и выберите «Новый\Класс пространственных объектов». 2.В появившемся Мастере укажите имя и алиас класса, свойства полей и алиасы полей. Использование других классов ПО в качестве шаблона При создании нового класса ПО Вы можете использовать другие классы ПО в качестве шаблона. Нажмите Import, перейдите к классу ПО, определение полей которого Вы хотите копировать, и нажмите OK. Теперь Вы можете редактировать имена полей и их типы данных.

Самостоятельный класс ПО должен иметь пространственную привязку, с ее установлением Вы познакомитесь в следующем разделе. Ранее Вы добавляли одну запись в класс линейных ПО, но если нужно ввести много записей, то операции были бы однотипными. После создания класса ПО, Вы можете таким образом заполнить его данными. Наборы классов объектов Классы ПО в зависимости от целевых соображений можно собирать в наборы классов объектов. В БГД они отображаются специальным значком. Набор классов объектов – это собрание классов ПО, графов и классов отношений, использующих общую систему координат. При создании нового набора классов объектов, Вы должны определить его пространственную привязку. Это включает систему координат, или географическую, или специальную проекционную и координатные домены - минимальные x-, y-, z- и m-значения и их точность. Все классы ПО в наборе данных должны использовать одну и ту же систему координат и каждая координата каждого ПО во всех классах ПО должны попадать в координатные домены. Исключением правила являются m-домены; классы ПО в одном и том же наборе классов объектов могут иметь различные m-домены. При определении системы координат, Вы можете выбрать предопределенную систему координат, использовать существующий набор классов объектов или единичный класс ПО в качестве шаблона, или определить пользовательскую географическую или проецированную систему координат.

Создание наборов классов объектов Создание пространственной привязки покажем на примере выбора предопределенной системы координат. 1.Нажмите правой клавишей название БГД и выберите «Новый\Набор классов объектов (Feature DataSet)». 2.Введите имя для набора классов объектов. 3.Нажмите Редактировать (Edit), чтобы определить пространственную привязку набора классов объектов. 4.Нажмите Select или Import, чтобы установить пространственную привязку набора классов объектов. 5.Перейдите к пространственной привязке, которую Вы хотите использовать, или перейдите к классу ПО или набору классов объектов, пространственную привязку которого Вы хотите использовать в качестве шаблона. 6.Нажмите Modify (Изменить), если хотите изменить любые параметры выбранной системы координат. Отредактируйте параметры системы координат и нажмите OK. 7.Нажмите закладку X/Y Domain. 8.Введите минимальный x, минимальный y, максимальный x, и максимальный y значения координат для набора данных и введите требуемую точность для значений координат. 9.Аналогичным образом ус 10.тановите Z Domain и M Domain (Если они нужны) и закройте ненужные окна.

Сохранение системы координат Вы можете нажать Save As, чтобы сохранить систему координат как.prj файл. Редактирование предопределенных параметров Вы можете легко создать вариации предопределенной системы координат. Например, выберите предопределенный датум в выпадающем списке; текстовые рамки теперь содержат выбранные параметры датума, а их содержание – только для чтения. Теперь в выпадающем списке датумов выберите. Содержание текстовых рамок не изменяется, но Вы можете теперь редактировать их значения. Введите имя для Вашего датума вместо. 10. Удалите вновь созданный набор классов объектов.

Подтипы и атрибутивные домены Одно из преимуществ хранения данных в БГД состоит в том, что Вы можете задавать правила редактирования этих данных. Атрибутивные домены – это правила, которые описывают допустимые (т.е. правильные с точки зрения Вашей задачи) значения поля таблицы (атрибута). Предположим, что при вводе данных в базу данных Вы ошибочно написали лишнюю цифру при указании года. В этом случае домен этого поля определит значение как недопустимое и Вам будет послано сообщение о возможной ошибке. Понятно, что один хранящийся в базе данных атрибутивный домен может использоваться несколькими классами ПО и таблицами. Однако совсем не обязательно, чтобы все объекты одного класса ПО или таблицы использовали один и тот же атрибутивный домен. Например, домен, не дающий записывать год из 5 цифр, будет одинаково работать в любых таблицах, где есть поле, учитывающее год. Имеются два различных типа атрибутивных доменов: диапазонные домены и домены кодированных значений. Диапазонный домен указывает допустимый диапазон значений для числового атрибута. Например, значение года, выходящее за пределы от 1900 до 2100 может считаться недопустимым.

Просмотр доменов персональной базы геоданных Каждый домен имеет имя, описание и специальный тип атрибута, к которому он применим. Для просмотра доменов персональной базы геоданных: В каталоге учебных данных перейдите к папке 0203 и нажмите правой клавишей персональную базу геоданных в дереве ArcCatalog, домены которой Вы хотите просмотреть. (Монтгомери.mdb). Нажмите Свойства (Properties) и нажмите закладку Домены (Domains).

В верхней рамке окна приводятся названия и описания самих доменов. В средней рамке отображаются свойства активного (выбранного) домена: тип поля, тип домена, минимальное и максимальное значение (для диапазонных доменов), методики разделения и объединения объектов. Наконец, в нижнем окне показаны кодированные значения выбранного домена и понятные пользователю описания кодированных значений. На вышеприведенном рисунке активным является Percentage – Допустимый процент. Можно видеть, что это – диапазонный домен (0-100) с типом данных Float и т.д. Когда Вы свяжете этот домен с конкретным полем, Вы не можете занести в это поле процент за пределами указанного диапазона. Примером доменов с кодами является Residential – жилой или нежилой с кодами, соответственно, 0 и 1.

Создание подтипов и атрибутивных доменов Чтобы домен работал, его нужно сначала создать, а потом привязать к конкретным полям конкретных ПО. Вы можете создавать новые диапазонные домены атрибута или домен кодированных значений. Для создание нового диапазонного атрибутивного домена 1.Нажмите первое пустое поле под Имя домена (Domain Name) и введите имя нового домена. Например, Year. 2.Нажмите клавишу Tab на клавиатуре или нажмите поле «Описание» (Description) нового домена и введите описание домена. Например, «Допустимые значения года» 3.Нажмите поле рядом с «Тип поля» (Field Type) в Domain Properties, нажмите раскрывающую стрелку, и выберите тип атрибутивного поля, для которого применим этот домен. 4. рядом с «Тип домена» (Domain Type), нажмите раскрывающую стрелку и выберите «Диапазон» (Range) из списка типов домена. 5.Нажмите поле «Минимальное значение» (Minimum value) для диапазонного домена и введите минимальное значение. Сделайте то же самое для максимального значения. 6.Нажмите поле рядом с «Правила разделения» (Split policy), нажмите раскрывающую стрелку и выберите методику разделения для нового домена. Сделайте то же самое для «Правила объединения» (merge policy). 7.Нажмите «Применить» (Apply), чтобы создать новый домен в базе геоданных или OK, чтобы создать домен и закрыть диалог. Домен кодированных значений создается аналогично, но при этом перечисляются и описываются все возможные значения.

Изменение и удаление атрибутивных доменов Для удаления атрибутивного домена из базы геоданных (или для его изменения) может быть использована страница «Свойства доменов» (Domains Properties). Об изменении и удалении атрибутивных доменов Домены могут быть ассоциированы с конкретными полями класса ПО или таблицы, или с полями подтипа класса ПО или таблицы. Когда домен используется таблицей или классом ПО, он не может быть изменен или удален.Вы можете изменить домен просто путем выборки его в диалоге свойств домена и изменением что-нибудь из его имени, типа и допустимых значений. Это осуществляется тем же способом, что и при создании нового домена. 1.Нажмите правой клавишей базу геоданных в дереве ArcCatalog и нажмите Свойства (Properties). 2.Нажмите закладку Домены (Domains). 3.Нажмите домен, который Вы хотите удалить путем нажатия левой закладки на сетке.

4.Нажмите клавишу Удалить (Delete). 5. Нажмите Применить (Apply), чтобы удалить домен из базы геоданных или OK, чтобы удалить домен и закрыть диалог.

Описания кодированных значений При добавлении нового значения к списку кодированных значений домена Вы должны также добавить и описание, понятное пользователю. Когда Вы редактирует значение атрибута для поля, которое имеет этот домен, в ArcMap Editor появляются значения с дружественным для пользователя описанием. Описания помогают Вам выбрать правильное значение. Методики разделения и объединения кодированных значений Домены кодированных значений в методике разделения поддерживают только значение по умолчанию и дублирование. Домены кодированных значений поддерживают в методике объединения только значения по умолчанию Ассоциация значений по умолчанию и доменов с таблицами и классами пространственных объектов После того, как Вы создали атрибутивный домен, или домены, Вы можете ассоциировать их самих и их значения по умолчанию с полями таблицы или класса ПО. После того, как домен ассоциирован с классом ПО или таблицей, в базе данных создается правило проверки корректности атрибута. Один и тот же атрибутивный домен может быть ассоциирован с несколькими полями одной и той же таблицы, класса ПО, или подтипа и может быть ассоциирован с несколькими полями в нескольких таблицах и классах ПО.

1.Нажмите правой клавишей таблицу или класс ПО в дереве ArcCatalog, с которым Вы хотите ассоциировать домены. 2.Нажмите Свойства (Properties). 3.Нажмите закладку Поля (Fields). 4.Нажмите поле, для которого Вы хотите создать значение по умолчанию и ассоциировать домен. 5.Нажмите поле рядом с «Значение по умолчанию» (Default Value) и введите значение по умолчанию. 6.Перейдите к шагу 9, если Вы не хотите ассоциировать домен с полем. 7.Нажмите поле рядом с Domain (Домен), нажмите раскрывающую стрелку и выберите домен, который Вы хотите ассоциировать с полем. В списке отображаются только те домены, которые применимы к этому типу поля. 8.Повторяйте шаги до тех пор, пока не ассоциируете значения по умолчанию и домены для все полей, которые должны иметь эти свойства. Нажмите «Применить» (Apply).

Что такое подтипы? Это группы объектов внутри класса объектов. Такие группы могут иметь некоторые общие характеристики, но важно то, что они имеют отличия в типичных значениях некоторых атрибутов или в роли, которую они играют в базе геоданных. Например, класс объектов дорог может включать подтипы магистралей, главных улиц и жилых улиц. Все они являются улицами, но магистрали обычно имеют четыре или более полос и ограничения скорости в диапазоне 45–70 миль/час, тогда как жилые улицы могут иметь только две полосы и ограничения скорости 15–30 миль/час. Подтипы могут иметь значения по умолчанию и домены в виде диапазона, которые отражают эти отличия. Подтипы Не все объекты в таблице или классе ПО должны иметь одни и те же домены или значения по умолчанию, применимые к одним и тем же полям. Для применения различных доменов и значений по умолчанию к одному и тому же полю в самостоятельной таблице или классе ПО, Вы должны создать подтипы. Для добавления подтипов и установления значений по умолчанию, а также создания атрибутивных доменов для полей каждого подтипа Вы можете использовать ArcCatalog.

Что такое значение по умолчанию? Это значение, которое вставляется в поле автоматически. Для этого значение должно быть ожидаемым, наиболее вероятным, или часто используемым. Такое поведение ускоряет ввод данных. Например, при проведении финансовых операций в поле «дата сделки» естественно поставить по умолчанию системную дату (Now). Если же фактическая дата отличается от Now, то исправить ее на нужную легче, чем набить заново. Создание подтипов и установка для них доменов и значений по умолчанию Из ArcCatalog войдите в «Учебные данные\0203\Монтгомери.mdb. Вы создадите подтипы для класса объектов Laterals и свяжите домены и значения по умолчанию с полями каждого подтипа. Поле подтипа Поле подтипа должно быть полем long integer или short integer. Если Вы не выбрали поле подтипа, Вы не можете добавлять подтипы.

1.Нажмите правой кнопкой на классе ПО Laterals и выберите Свойства (Properties). 2.Нажмите закладку Подтипы (Subtype). Теперь укажите, какое из полей класса Laterals является полем подтипа. Поле подтипа содержит значения, определяющие, к какому из подтипов относится данный объект. 3. В ниспадающем списке «Поле подтипа» (Subtype field) выберите поле TYPECODE. Теперь Вам надо добавить коды подтипов и их описания. При добавлении каждого нового подтипа, для некоторых полей нужно будет задать значение по умолчанию и домен. 4.Нажмите на ячейке «Код» (Code) и введите 0, затем нажмите «Описание» (Description) для кода 0 и введите описание Неизвестный. 5.Нажмите на ячейке Значение по умолчанию для поля H_CONFID и введите число 0 в качестве значения по умолчанию. Сделайте то же самое для полей DEPTH_BURI и RECORDED_L. Для полей WMN_TYPE и PWTYPE в качестве значения по умолчанию введите WUNKNOWN. 6.Для поля DIAMETER введите в качестве значения по умолчанию число 8. Нажмите на ячейке «Домен» (Domain) этого поля и в ниспадающем списке выберите домен DistDiam, тем самыми связав его с подтипом Неизвестный. 7.Для поля MATERIAL в качестве значения по умолчанию введите DI и выберите домен Material. 8. Аналогично подтипу Неизвестный, добавьте в класс объектов Laterals следующие подтипы и установите значения по умолчанию, такие же, как и для подтипа Неизвестный, за исключением полей WMN_TYPE и PW_TYPE.

Определив все подтипы, Вы можете выбрать подтип по умолчанию. Когда Вы создадите новый объект в ArcMap, не указав его подтип, этот объект будет отнесен к подтипу по умолчанию.

9.В ниспадающем списке «Подтипы по умолчанию» (Default subtype) выберите подтип Домовые отводы, чтобы назначить его подтипом по умолчанию. 10.Нажмите кнопку ОК. Определив подтипы объектов и атрибутивные домены, Вы тем самым добавили в базу геоданных элементы поведения объектов. Далее, Вы добавите другие элементы поведения объектов в виде отношений между этими объектами. Подтип по умолчанию Подтип по умолчанию служит двум назначениям. Когда Вы создаете новый подтип, нажмите Использовать по умолчанию и подтип унаследует все значения по умолчанию и домены для его полей из подтипа по умолчанию. Они могут затем быть изменены, чтобы отвечать требованиям нового подтипа. Когда Вы добавляете дополнительные подтипы, подтип по умолчанию может быть изменен в любое время. Когда Вы создаете новый ПО в классе ПО без указания подтипа, ему будет присвоен подтип по умолчанию автоматически.

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

Что такое класс отношений? Объекты в реальной системе, такие как электрическая сеть или земельный участок в базе данных, часто имеют конкретные ассоциации с другими объектами в базе данных. Например, в электросети опоры поддерживают трансформаторы. В базе данных земельных участков земельный участок имеет одного или более владельцев. Для хранения отношений, таких как между электрическими трансформаторами и опорами, Вы должны создать класс отношений. Если в Вашей базе геоданных трансформаторы также имеют отношения с атрибутивными объектами трансформатора, то для хранения этих отношений требуется второй класс отношений.

Анатомия отношения Как и любая ассоциация, отношения имеют конкретные характеристики. Одной из очевидных характеристик является обозначение кардинальности. Кардинальность описывает, сколько объектов одного типа связаны с объектами другого типа. В примере опора–трансформатор, одна опора может поддерживать более одного трансформатора, но трансформатор может быть смонтирован только на одной опоре. Отношение между опорами и трансформаторами есть один-к-многим: Одна опора, которая является объектом в классе отправления отношения, ко многим трансформаторам, которые являются объектом в классе назначения отношения. В общем, отношения могут иметь кардинальности один-к-одному, один-к-многим, и многие-к-многим. Как Вы увидите позднее в этой главе, определенные типы отношений поддерживают определенные кардинальности, и Вы можете контролировать кардинальности для любого класса отношений при определении правил отношений. Отношение между двумя объектами устанавливается посредством значения атрибута для ключевых полей. В примере опора - трансформатор, число единиц трансформаторов, которое поддерживает опора, могут быть включены в атрибуты объекта трансформатора. На него ссылаются как на встроенный внешний ключ. Он говорит нам, какой объект в классе ПО опоры соответствует связи с конкретным трансформатором. Классы отношений могут иметь атрибуты. Любой класс отношений, который имеет атрибуты должен быть размещен как таблица в базе данных и иметь пару внешних ключей, ссылающихся на классы отправителя и получателя класса отношений. В этом случае, каждое отношение размещается в качестве строки в таблице классов отношений. Аналогично, любые многие-к-многим классы отношений требуют таблицу в базе данных, чтобы хранить по крайней мере внешние ключи.

Отношение является ассоциацией между двумя или более объектами в двух классах ПО или таблицах в базе геоданных. Отношения хранятся в классах отношений.

Классы отношений могут быть также использованы для распространения стандартных сообщений между связанными объектами. Сообщения являются механизмом, с помощью которого объекты связываются друг с другом для уведомления о своих изменениях. Например, в отношении между опорами и трансформаторами, когда опора удаляется, она посылает сообщение связанным с ней объектам трансформаторов, информируя их, что она удалена. Поскольку трансформаторы не могут существовать без поддерживающей их опоры, эти объекты трансформаторов могут реагировать на сообщение самоудалением.

Отношение между двумя объектами устанавливаются посредством атрибутивных значений для полей ключей.

База геоданных поддерживает два типа отношений: простые (или peer- to-peer - равноправные) отношения и сложные отношения. Каждое кратко обсуждается ниже. Простые отношения Простые, или равноправные (peer-to-peer), отношения являются отношениями между двумя или более объектами в базе данных, которые существуют независимо друг от друга. В отношении между объектом A и объектом B, если объект A удаляется из базы данных, то объект В остается существовать. Например, в железнодорожной сети Вы можете иметь переезд, который имеет один или более связанных сигнальных огней. Однако, железнодорожный переезд может существовать и без сигнального огня, а сигнальные огни могут быть в железнодорожной сети там, где нет железнодорожных переездов. Простые отношения могут иметь кардинальность один-к-одному, один- к-многим, или многие-к-многим.

Сложные отношения База геоданных также поддерживает нотацию сложного отношения, в котором жизненный цикл объекта отправителя контролирует жизненный цикл связанных объектов. Отношение опора-трансформатор является примером сложного отношения. После того, как опора удаляется, сообщение об этом передается связанным с ней трансформаторам, которые удаляются из класса ПО трансформаторов. Сложные отношения всегда имеют кардинальность один- к-многим, но могут быть ограничены использованием правил отношений один-к-одному.

Классы атрибутивных отношений Один-к-одному и один-к-многим классы отношений не требуют создания новой таблицы в БГД для хранения этого отношения. Однако, классы отношений многие-к-многим требуют новую таблицу в базе данных для хранения внешних ключей из класса отправителя и классов получателя, делающих отношение. Эта таблица может также иметь другие поля для хранения атрибутов самого отношения, которые не являются атрибутами ни класса отправителя, ни класса получателя. Например, в базе данных земельных участков Вы можете иметь класс отношений между земельными участками и их владельцами, где владельцы "владеют" земельными участками, а земельные участки находятся "во владении" владельцев. Атрибутом отношения может быть процент владения. Классы отношений один-к-одному и один-к-многим могут также иметь атрибуты; в данном случае могла бы быть создана таблица, чтобы хранить отношения.

Правила отношений Классы отношений могут иметь ассоциативное множество правил отношения. Правила отношений контролируют связь подтипов объектов из класса- отправителя с подтипами объектов в классе-получателе. Они могут также быть использованы для указания допустимого диапазона кардинальности для всех разрешенных пар подтипов. Например, подтип деревянный столб способен быть опорой от 0 до 3 трансформаторов, в то время как подтип металлический столб может быть опорой для трансформаторов. В первом случае диапазон кардинальности мог бы быть 0-3; во втором случае Вы можете установить отношение между двумя или более объектами в БГД путем использования инструментов, доступных в ArcMap. Когда отношение установлено, используйте инструменты ArcMap для перехода к ним и символизации объектов на основе атрибутов в связанном объекте. Вы можете найти все объекты, которые имеют отношение с конкретным объектом – для любого отдельного класса отношений.

Создание класса простых отношений Вы можете создать новый класс отношений между любым классом ПО, или таблицы, внутри Вашей базы геоданных, используя инструменты в ArcCatalog. Эти инструменты могут быть использованы для создания классов простых, сложных и атрибутивных отношений. Классы отношений появляются в дереве Catalog и Вы можете инспектировать их свойства, также как отношения для любого конкретного класса ПО. Пример в данной задаче показывает, как создать класс отношений между классом ПО, который содержит объекты земельных участков и таблицей, которая хранит объекты владельцев. Это простое, неатрибутивное отношение. В базе данных, земельный участок может быть принадлежать отдельному владельцу и владелец может владеть единичным земельным участком, так что это отношение один-к-одному (1–1). 1.Нажмите правой клавишей базу геоданных или набор классов объектов в дереве ArcCatalog, в котором Вы желаете создать новый класс отношений («Учебные данные\0203\Монтгомери.mdb\Землепользование»). 2.Раскройте набор классов Землевладение» и убедитесь, что этот набор не содержит класса отношений ParcelOwners. Если это не так, удалите этот класс или измените ему название. 3.Укажите на Новый (New) и выберите Класс отношений (Relationship Class). 4.Введите имя для нового класса отношений - ParcelOwners. 5.Нажмите имя таблицы-источника или класса-источника ПО - Владельцы. 6.Нажмите имя таблицы-адресата или класса-адресата ПО - Parcels. 7.Нажмите Далее (Next).

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

8. Нажмите «Простое отношение» Simple (peer-to-peer) relationship). 9. Нажмите Далее. Теперь Вы должны указать слова, выражающие суть прямого и обратного отношения, и направление передачи сообщений. Слово для прямого отношения указывает, как объекты класса-источника воздействуют на объекты класса-адресата. В данном случае владельцы участков владеют ими. Слово для обратного отношения выражает, как земельные участки относятся к их владельцам. Направление передачи сообщений указывает, как передаются сообщения между объектами классов, связанных отношением. Для данного отношения уведомления не используются, поэтому оставьте вариант по умолчанию None. 10. Введите прямые и обратные метки пути. Наберите владеет для описания прямого отношения и принадлежит – для обратного. 11. Нажмите Далее. Теперь нужно указать кардинальность создаваемого отношения. Кардинальность отношения определяет возможное количество объектов в классе-адресате, которые могут быть связаны с одним объектом в классе- источнике. 12. Нажмите опцию первой кардинальности. В этом примере, владелец может владеть одним земельным участком, а земельный участок может иметь одного владельца, так что это отношение один-к-одному (1–1). 13. Нажмите Далее.

M–N классы отношений Классы отношений многие-к- многим (M–N) требуют, чтобы класс отношений имел свою собственную таблицу в базе данных. Вы можете при желании добавлять атрибуты в эту таблицу, или Вы можете позволить ArcGIS управлять схемой таблицы. Направление уведомления По умолчанию направление уведомления для простого отношения равно None. Настройка сообщений Включение сообщений влечет то, что сообщения генерируются при каждом изменении, замедляя производительность. Если Вам не надо отвечать на сообщения и соответственно реагировать, Вы могли бы не включать передачу сообщений.

14.Нажмите No. Класс отношений не требует атрибутов в этом примере. 15.Нажмите Далее. 16.Нажмите раскрывающую стрелку, чтобы просмотреть список полей из исходной таблицы или класса ПО. Нажмите первичный ключ для этого класса ПО или таблицы. Следующий шаг – определение первичного ключа в таблице-источнике отношения «Владельцы» и внешнего ключа в классе-адресате «Parcels». Другими словами, надо выбрать общее поле для связывания двух классов объектов. Участки (Parcels), имеющие в этом поле те же значения, что и владельцы (Owners), будут привязаны к этим владельцам

17. Нажмите раскрывающую стрелку, чтобы просмотреть список полей из целевой таблицы или класса ПО. Отображаются только те поля, которые являются одного и того же типа, что и выбранные на предыдущем шаге. Нажмите внешний ключ, который соотносится с первичным ключом, выбранном на предыдущем шаге.

18.Нажмите Далее. См также Несмотря на то, что любой класс отношений может иметь атрибуты, в этом примере Вы не добавляете атрибуты в класс отношений. Дополнительную информацию о том, как создать класс атрибутивных отношений см «Создание класса отношений с атрибутами» в этой главе. 19. Просмотрите опции, которые Вы указали для Вашего нового класса отношений. Если Вы хотите что-то изменить, Вы можете вернуться назад в Мастере путем нажатия Назад. 20. Нажмите Готово, чтобы создать новый класс отношений при удовлетворении Вашим опциям. Выполнив это упражнение, Вы определили еще один элемент поведения объектов – отношение между классами объектов.

Создание класса отношений с атрибутами Любой класс отношений - простой или сложный, любой конкретной кардинальности – может иметь атрибуты. Классы отношений с атрибутами размещаются в таблице базы данных. Эта таблица содержит по меньшей мере внешний ключ на исходном классе ПО, или таблице, и внешний ключ на целевом классе ПО или таблице. Атрибутивное отношение может также содержать любые другие атрибуты. Пример в этой подзадаче показывает как создать простое отношение между классом ПО, который содержит боковые отводы и классом ПО, который содержит гидранты. Объекты бокового отвода имеют собственные атрибуты, а объекты гидранта имеют свои собственные атрибуты. Класс отношений в данном примере описывает, какие боковые отводы водопровода с какими гидрантами соединяются. Поскольку Вы желаете хранить некоторый вид информации об этом отношении, такой как тип стояка, соединяющего пару, Вы можете хранить эту информацию как атрибуты в классе отношения.

1.Выполните шаги для задачи «Создание класса простых отношений». 2.Нажмите первую опцию, чтобы добавить атрибуты в класс отношений. 3.Нажмите Далее (Next). 4.Нажмите следующую строку в столбце Имя поля (Field Name) и введите имя добавляемого поля. 5.Нажмите в поле Тип данных (Data Type) рядом с новым именем поля, затем выберите его тип данных. 6.Установите свойства нового поля в свойства списка. 7.Повторяйте шаги пока не будут определены все поля класса отношений. 8.Нажмите Далее. 9.Нажмите раскрывающую стрелку, чтобы увидеть список полей из исходной таблицы или класса ПО. Нажмите первичный ключ для этого класса ПО или таблицы. 10.Введите имя поля внешнего ключа для исходной таблицы или класса ПО. 11.Нажмите раскрывающую стрелку, чтобы увидеть список полей из целевой таблицы или класса ПО. Нажмите первичный ключ для этого класса ПО или таблицы.

1.Введите имя поля внешнего ключа для целевой таблицы или класса ПО. 2.Нажмите Далее. 3.Просмотрите опции, которые Вы указали для Вашего нового класса отношений. Если Вы хотите что-то изменить, Вы можете вернуться в Мастере путем нажатия Назад. Нажмите Готово, чтобы создать новый класс отношений, если он отвечает Вашим требованиям.

Контрольные вопросы и задачи Все необходимые данные должны находиться в Вашей собственной папке «Контрольные задачи» Вопрос 1. Уточните, сколько типов данных имеют атрибутивные таблицы. Задача 1. Элементы оцифровки. В папке Упр_0201 открыть карту Аэрофото. Некоторые из строений оцифрованы неточно. Исправить оцифровку BLDGS_ID=101 и к контуру строения добавить «крылечко» в виде прямоугольного выступа в любом месте. Если соединить два строения (BLDGS_ID=101 и BLDGS_ID=114) коридором и объединить их в одно строение, то как это отразится на атрибутивной таблице? Объедините две соответствующие записи вручную, имея в виду сильные различия атрибутов. Попробуйте разработать методику объединения для случая несильного различия атрибутов, вставить методику в домен и объединить оба строения в автоматическом режиме (необязательное упражнение).

Задача 2. Непространственные запросы В папке Упр_0202 откройте карту Запросы. Выполнить следующие запросы к слою Города (с помощью Конструктора запросов): Отобрать все столичные города, названия которых начинается на букву М. Отобрать все столичные города, которые имеют в названии букву м. Отобрать столичные города в странах, имеющих плотность населения свыше 500 человек на квадратный километр. Задача 3. Непространственные запросы В папке Упр_0203 откройте карту «Выбор квартиры». Найдите квартиры, отвечающие следующим условиям: Статус – продается Число спальных комнат (BD_RMS) – 3 Цена (SALE_PRICE) – менее $ Расположение – угловая (на перекрестке улиц)

Задача 4. Пространственные запросы Откройте в папке Упр_0204 карту Разломы. Определите водоводы, пересекающие геологические разломы, а также определите общую длину водоводов, приходящуюся на каждого собственника Задача 5. Пространственные запросы Откройте в папке Упр_0205 карту Затопления. Город хочет уведомить всех владельцев собственности в пределах зоны затопления, определенной за 100-летний период, о специальных дешевых займах для подъема дамбы над базовым уровнем наводнения, этим самым сокращая страховые издержки. Определите всех владельцев, у которых центры земельных участков попадают внутрь зоны затоплений, определенной за 100-летний период. Сколько нужно послать уведомлений в г. Онтарио?

Задача 6. Пространственные запросы Ваша фирма планирует расположить новую выставку товаров в юго-восточной части США. Для этого Вам нужно определить города с населением более человек. Вы должны быть уверены, что клиенты, заказывая товар в выставочном зале, могли бы получить его на следующий день. Для реализации этой цели, новая выставка должна находиться в одном дне поездки (примерно 300 миль) от Вашего регионального центра распределения в Атланте, Джорджиа. Вы также желаете расположить новую выставку в штате, где продажи в прошлом году были слабыми. Это помогло бы увеличить их. Ваши данные о продажах за прошлые годы находятся в файлах SALES. Для решения задачи: Войдите в папку Упр_0206 и откройте карту Выставка. Соедините таблицу SALES с таблицей слоя «Соединенные Штаты Америки». Раскрасьте этот слой по значению поля SALES.TOTAL. Создайте слой из городов с населением >= и найдите город Atlanta. Выберите все города в пределах 300 миль от Atlanta и подпишите их.