|
||||||||||||||||||||||||||||||||||||||||||
|
Содержание:
|
||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||
|
Для создания нового проекта запустите ArcView. Выберите
в меню «Файл->Новый проект» или (если при запуске ArcView
откроется диалог выбора, см. рисунок ниже) необходимо выбрать пункт «Как
новый проект». Если вы создаете новый проект на основе существующих
данных (обычно это файлы с расширением *.SHP) , то нужно
выбрать пункт «С новым видом», после чего ArcView предложит выбрать
место расположения и указать темы для текущего проекта .
рис. Диалог добавления тем в проект. Типичное окно нового проекта выглядит следующим образом: рис. Окно нового проекта Проект ArcView может включать в себя: 1) ВИДЫ (View) - это карта (набор ТЕМ - «слоев»),
в свойствах которой указывается проекция и др. параметры. Т.Е. это то
поле, где и будут отображаться ваши данные. Как добавить в проект новый вид ? Для того, чтобы добавить новый вид вам необходимо "встать" на иконку «ВИДЫ» (View) и нажать на кнопку «Новый» (New), или два раза щелкнуть левой кнопкой мыши на иконке «ВИДЫ». После проделанного вы увидите окно нового вида, которое обычно называется «View1».
Рис. Создание нового вида. Как добавить темы в новый вид ? Для этого выберите пункт меню «Вид->Добавить тему...»
или нажмите кнопку рис. Диалог добавления тем в проект. Окно вида с добавленными темами выглядит следующим образом: рис. Вид с добавленными темами Окно вида осталось пустым, т.к. ни одна тема не помечена как отображаемая. Как сделать, чтобы тема отобразилась в окне вида, т.е. была видима? В левой части окна вы видите название вашей темы, а слева от нее серый квадратик. Если щелкнуть на этом квадратике левой кнопкой мыши, то появится черная галочка и эта тема окажется отображенной в окне вида. рис. Вид с добавленными темами Вы можете выбрать столько тем, сколько захотите... Но вся проблема в том, что ArcView требует, чтобы все добавляемые темы были не спроектированы, т.е. были бы в географических координатах. Для вычисления площадей, размеров, длин участков необходимо использовать спроецированные данные. Как спроецировать данные в систему координат «Пулково 1942»? Выберите в меню пункт «Вид->Свойства» (View->Properties). Вы увидите свойства текущего вида, среди них нас интересует информация о проекции. Если вид не спроецирован, а значит и все темы в нем, то после слова Projection: будет стоять None. В противном случае будет указано название проекции. рис. Дилог, отображающий свойства вида Для того, чтобы установить проекцию «Пулково 1942» необходимо нажать кнопку «Projection...» и указать параметры этой проекции в диалоге, показанном ниже.
рис. Параметры проекции «Пулково 1942»«Пулково
1942» Т.к. в ArcView нет в списке стандартных проекций «Пулково
1942», то необходимо задать параметры самостоятельно. Для этого перейдите
на закладку «Custom» и заполните
соответствующие поля. Как изменить шрифт в легенде Если у вас подписаны темы в таблице содержания по-русски и кириллица выглядит как «птичья грамота», то вам необходимо изменить шрифт в таблице содержания. рис. Вид с таблицей содержания, где есть русские буквы. Для того, чтобы изменить шрифт в легенде, т.е. таблице
содержания выберите в меню пункт «Вид->Стиль таблицы содержания...».
Далее вам откроется диалог выбора шрифта, где вы можете указать название,
тип и размер шрифта для отображения в таблице содержания. Русские шрифты
в своем названии обычно имеют суффикс CYR (Например Times New Roman
Cyr). рис. Диалог выбора шрифта для таблицы содержания После описанных процедур в таблице содержания все наименования написанные на русском языке должны отображаться в нормальном виде!!! рис. Вид с измененной таблицей содержания Какие существуют основные элементы вида? На этот вопрос можно ответить графически... рис. Основные элементы вида Что сделать, чтобы прорисовывалась интересующая меня тема сверху? Порядок прорисовки тем показан в таблице содержания. Т.е. самая нижняя тема в таблице содержания будет прорисовываться первой затем та, которая выше и т.д. до самой верхней темы. Для смены порядка прорисовки тем укажите на интересующую вас тему и нажмите левую кнопку мыши, затем не отпуская ее переместите тему на необходимое вам место и отпустите кнопку мыши. Вид обновится в соответствии с текущим расположением тем в таблице содержания. Чтобы сделать тему активной щелкните на названии темы или на легенде в Таблице содержания. Примечание: Многие операции, которые Вы
можете совершать в Виде, работают только с активной Как сделать активными несколько тем? Нажав и не отпуская клавишу SHIFT щелкните поочередно на нескольких темах в Таблице содержания . Как сделать активную тему неактивной? Сделайте одно из следующего: Щелкните на другой теме,
чтобы сделать ее активной или Совет: Сделать тему активной - это не то же самое, что включить ее или выключить. Чтобы сделать тему активной, вы щелкаете на ее имени или легенде в Таблице содержания. Чтобы включить или выключить тему, Вы щелкаете на флажке-переключателе слева от названия темы в Таблице содержания. Это управляет изображением темы в Виде. Посмотрите раздел справки Включение и выключение тем. Как изменить размер, цвет, символ, заливку для темы? Укажите интересующую вас тему и дважды щелкните левой кнопкой мыши. Появится диалог, показанный ниже. Это редактор легенды для текущей темы. В поле LABEL можно указать понятное для вас описание для текущей темы. рис. Свойства прорисовки темы Далее необходимо щелкнуть дважды левой кнопкой мыши на символе, отображающем текущую тему и появится диалог установки свойств прорисовки текущей темы. Если вам необходимо изменить цвет, то щелкните на кнопочку
выбора цвета
Foreground - цвет основного элемента; Background - Цвет фона; Outline (Контур ) - Устанавливает цвет обводки контура при заливке. Text - цвет текста для подписей. Определяется пользователем (Custom) Выводит на экран диалоговое окно, в котором вы можете создать нужный цвет. В диалоговом окне настройте опции Оттенок (Hue), Насыщение (Saturation) и Значение (Value) за счет перемещения слайдера по строке или напечатайте значения для создания нужного вам цвета. Затем щелкните на "OK". Оттенок (Hue) - основной цвет; красный, зеленый, синий и т.д. Насыщенность - мера чистоты цвета, его отличие от серого. Значение - количество белого (светлого) или черного (темного) в данном цвете. рис. Диалог установки цвета. Выбор производится указанием и кликом левой кнопкой мыши на интересующем вас цвете. Если вы хотите изменить
размер отображемого элемента темы,
то щелкните на кнопочку Опции диалогового окна Размер (Size) Вы можете установить размер маркера в пунктах. Выберите размер из списка значений или напечатайте свое. Вы можете ввести число, такое как 6.25. В дюйме содержится 72 пункта.Угол (Angle) Вы можете задать угол поворота символа маркера. Можно вводить значения от 0 до 360. Угол поворота задается против часовой стрелки. рис. Диалог установки параметров для отображения символа. Если вам необходимо изменить стиль линий, для отображения
линейных объектов, то щелкните на кнопочку Опции диалогового окна Размер (Size) Задает толщину линии в пунктах.
В дюйме 72 пункта. Торец (Butt) - определяет, что в ArcView линия
будет обрезана под прямым углом в начальной и конечной точках. Соединить (Join) С помощью параметров опции Соединить можно определить, как в ArcView будет изображаться линия в месте расположения вершины (промежуточного узла, или вертекса). Со скосом (Miter) - определяет, что линия будет
продолжена и скошена в месте расположения вершины. рис. Диалог установки параметров для отображения линейных объектов. Если вам необходимо изменить способ заливки площадных
(полигональных) объектов, Опции палитры закрашивания Контур (Outline) Для определения ширины контура полигона введите ширину в пунктах или выберите значение из ниспадающего списка. Вы можете ввести число, такое как 0.1, чтобы создать подходящую линию для вывода твердой копии. В дюйме 72 пункта. Для вывода на экран полигона без контура (оконтуривания) выберите из списка опцию Отсутствует (None). Для задания цвета контура перейдите в окно Палитра цветов и выберите опцию Контур из ниспадающего списка в поле Цвет (Color). Затем выберите нужный цвет. В этой версии ArcView нельзя изменять символ контура полигонов. Если вам необходимо изменить шрифт подписей для
текущей
темы, то нажмите кнопку Опции палитры шрифтов Размер (Size) Помимо выбора шрифта Вы можете определить
его размер в пунктах, выбрав значение из списка размеров или введя нужный
Вам размер. При изменении размера выбранного текста с помощью мыши,
его размер в пунктах будет показан в диалоговом боксе. Один дюйм равен
72 пунктам. Примечание: Для задания цвета шрифта перейдите в Палитру цветов и выберите опцию Текст из ниспадающего списка поля Цвет. Затем выберите нужный цвет. рис. Диалог установки параметров текста. После выбора цвета закройте окно, нажав на «крестик» в правом верхнем углу и вы увидите, что цвет элемента изменился. Для того, чтобы изменения вступили в силу, вам необходимо нажать кнопку «Применить» («Apply»). Окно вида перерисуется с установленными параметрами для текущей темы. Как изменить расположение подписей для точечного объекта? Для того, чтобы указать расположение подписей необходимо
выбрать в меню пункт рис. Диалог установки параметров подписей для точечных объектов текущей темы. Поле метки (Label Field) Поле в таблице атрибутов
для темы, которое будет использовано для вставки текста подписей к объектам
в теме, и для пометки записей, выводимых при идентификации объектов
с помощью инструмента Идентифицировать (Identify). Вы можете
использовать любое поле из таблицы атрибутов для темы. По умолчанию
это первое символьное поле в таблице атрибутов темы. Если символьные
поля отсутствуют, то по умолчанию этому полю задается значение Отсутствует
(None). Опции вставки подписей для точечных тем Позиция текста по отношению к точке метки (Position of text relative to label point) Девять кнопок Текст (Text) показывают возможные позиции текстовой метки относительно точки. По умолчанию это кнопка справа от центра. Для использования другой позиции щелкните одну из кнопок Текст. Как изменить расположение подписей для линейного объекта? Для того, чтобы указать расположение подписей необходимо выбрать в меню пункт «Тема->Свойства». Далее щелкнуть на вкладку «Text Labels», появится диалог которой управляет расположением подписей для линейных объектов. рис. Диалог установки параметров подписей для линейных объектов текущей темы. Опции вставки подписей для линейных тем Выровнять относительно линии (Alignment Relative
to Line) Подписи к линейным объектам ориентируются так, чтобы подпись
следовала за общим направлением линии. Направление текста между 90 и
270 градусами невозможно, то есть текст не может быть перевернут вверх
ногами. Положение подписи относительно линии можно настроить, используя
следующие опции: Как изменить расположение подписей для полигонального объекта? Для того, чтобы указать расположение подписей необходимо
выбрать в меню пункт рис. Диалог установки параметров подписей для полигональных объектов текущей темы. Опции вставки подписей для полигональных тем Поле метки (Label Field) Поле в таблице атрибутов
для темы, которое будет использовано для вставки текста подписей к объектам
в теме, и для пометки записей, выводимых при идентификации объектов
с помощью инструмента Идентифицировать (Identify). Вы можете
использовать любое поле из таблицы атрибутов для темы. По умолчанию
это первое символьное поле в таблице атрибутов темы. Если символьные
поля отсутствуют, то по умолчанию этому полю задается значение Отсутствует
(None). Для этого необходимо:
рис. Диалог установки параметров текста. Закройте это окно, нажав на крестик в правом верхнем углу. Поле метки (Label Field) Найти наилучшее место для подписи Когда включена эта опция, ArcView оценит форму каждого
объекта и окружающую его область. ArcView попытается поместить подпись
в оптимальное положение для каждой формы объекта. ArcView использует
следующие критерии оценки оптимальности подписи: Разрешить наложение подписей друг на друга Удалить дубли (Remove Duplicates) (Только для линейных
тем) Опции расположения линейных подписей Используйте эти кнопки для размещения подписей к линейным объектам выше, ниже или на самом линейном объекте. В целом, ArcView рассматривает все пространство вдоль линии, как потенциальное место расположения подписи, при этом оптимальным считается центр отрезка. Если в центре отрезка линии места недостаточно, ArcView будет сдвигать подпись вдоль линии в обоих направлениях, чтобы найти свободное место для размещения подписи. Масштабировать подписи (Scale Labels) рис. Диалог установки параметров автоподписи для точечных объектов После нажатия кнопки «ОК» ArcView произведет автоматическую подпись объектов для текущей темы. Для этого существует несколько способов. Вверху существует линейка инструментов, при поммощи которой производится много действий, в том числе и изменение масштаба.
Чтобы увеличить изображение в определенном месте Выберите инструмент Увеличить (Zoom In) и щелкните мышью в определенном месте на изображении. ArcView увеличит изображение в 2.0 раза с центром в выбранном месте. Чтобы увеличить до размеров определенной территории Выберите инструмент Увеличить и определите область, растянув бокс с помощью мыши. ArcView увеличит изображение до размеров выбранной области. (В зависимости от заданной формы бокса по сравнению с формой окна Вида или компоновки Вы, возможно, увидите чуть больше изображения Вида или компоновки у одного края соответствующего окна по сравнению с изображением в боксе).
Ну и наконец, можно непосредственно указать значение масштаба в специальном поле, Масштаб вида отображается справа в строке инструментов. Когда вы увеличиваете, уменьшаете или изменяете размеры окна вида, значение масштаба автоматически изменяется, чтобы отразить текущий масштаб вида. Масштаб вида отображается как соотношение, например 1:24000. Для получения более подробной информации относительно масштаба смотрите Масштаб и точность карты. Чтобы правильно отобразить масштаб вашего вида в ArcView,
в виде должны быть правильно указаны картографические единицы, в которых
хранятся пространственные данные. Посмотрите раздел справки Установка
картографических единиц
Как удалить подписи для текущей темы? Для этого встаньте на интересующую вас тему и выберите пункт меню «Тема->Удалить подписи» Как настроить интерфейс пользователя? (добавить/удалить кнопку...) Перейдите в режим настройки пользовательского интерфейса посредством двойного нажатия на панели инструментов левой кнопки мыши. рис. вызов редактора интерфейса Примечание. Щелкнуть нужно на пустом месте
панели. Если вы щелкните на кнопке, то вызовется программа, соответствующая
кнопке. рис. окно редактора интерфейсов Далее вам необходимо сменить категорию. Т.к. вы хотите изменять кнопки, то нужно выбрать категорию «Кнопки» (Buttons). Причем тип должен оставаться «View». рис. окно редактора интерфейсов c категорией «Кнопки» Вы видите полоску прокрутки с кнопками. Здесь можно перетаскивать
кнопки, как вам нравится. А также можно создавать новую кнопку
(NEW) или разделитель (SEPARATOR), а также можно удалить
выбранную кнопку (DELETE). рис. окно редактора с новой кнопкой Вот и создали новую кнопку. Теперь необходимо присвоить этой кнопке какое-нибудь изображение. Это делается при помощи двойного клика левой кнопкой мыши на строке «Icon». Вашему вниманию откроется диалоговое окно выбора графического изображения. рис. окно выбора рисунка для кнопки рис. диалог загрузки рисунка из файла Если у вас есть уже готовый рисунок в формате BMP, то вы можете загрузить его, нажав кнопку «Load...» и указав местонахождение рисунка он появится в окне. Подтверждение выбора осуществляется путем нажатия на кнопку «ОК». рис. окно редактора с новой кнопкой и загруженной картинкой Теперь нам необходимо указать для чего эта кнопка предназначена.
Это делается для облегчения работы пользователя, хотя в принципе, для
опытных пользователей можно и не делать!!! рис. окно редактора поля HELP Подтверждение ввода осуществляется нажатием кнопки «ОК». рис. окно с измененным полем HELP Теперь необходимо ассоциировать с этой кнопкой программу, которая будет выполняться при нажатии на эту кнопку. Примечание. Обычно тексты программ написаны
на языке Avenue (так называемые скрипты). Для написания скриптов смотрите
книжку по программированию на языке Avenue и читайте хелп (помощь).
Пусть для нашей кнопки будет ассоциирован скрипт SEL2XLS.AVE. рис. диалог выбора скрипта В этом диалоге перечислены скрипты, которые стандартно
поставляются с ArcView. Вы можете смело использовать их в своих программах!!! рис. диалог создания нового скрипта После этого откроется окно редактирования скриптов, но оно окажется на заднем плане. Чтобы перейти в режим редактирования, закройте окно редактора интерфейсов, нажав на крестик в правом верхнем углу. рис. окно редактирования нового скрипта Далее вам необходимо удалить его содержимое и загрузить уже имеющийся скрипт, выбрав пункт меню «Текст программы ->Загрузить текстовый файл... ». Появится диалог выбора фала для загрузки. Укажите папку со скриптами и выберите файл. В нашем примере это Sel2Xls.ave рис. диалог выбора скрипта Далее текст программы загрузится в редактор. Здесь вы
можете исправить, что захотите. А после исправлений необходимо скомпилировать
программу, нажав на кнопку рис. окно редактирования нового скрипта Такими же действиями можно настроить любое количество кнопок, какое захотите. Теперь вам остается только закрыть окно редактирования скрипта и перейти в окно вида, где вы увидите новую кнопку. См. рисунок ниже... рис. окно вида с новой кнопкой Как скрыть мои программы от лишних глаз? Для этого необходимо перейти в режим настройки пользовательского интерфейса посредством двойного нажатия на панели инструментов левой кнопки мыши. рис. вызов редактора интерфейса Далее в появившемся окне напротив выпадающего списка с выбором типа, нажать на кнопку «Редактировать» (EDIT). рис. вызов окна редактирования интерфейса Далее откроется окно в котором вы можете скрыть/показать: Виды, Таблицы, Компоновки, Статьи программ... Все это делается путем указания на соответсвтующий элемент и установки/снятия галочки. рис. окно, в котором производится отключение/включение режима показа элементов проекта Если галочка будет снята, например с элемента «Статьи программ» (Scripts), то это означает, что в окне проекта статьи программ увидеть будет невозможно. Чтобы изменения вступили в силу, необходимо закрыть это окно и окно редактора интерфейсов. После проделанных процедур вы увидите в окне проекта следующее... рис. окно проекта Как установить шрифт со значками? Обычно шрифты нужны для отрисовки нестандартных значков.
Сами шрифты - это файлы с расширением *.TTF . рис. Панель управления Далее вам откроется диалоговое окно установленных шрифтов. рис. Установленне шрифты... Выберите пункт меню «Файл->Установить новый шрифт...». Откроется диалоговое окно установки шрифта, в котором вам необходимо указать папку , где лежать шрифты в котором необходимо нажать кнопку «Выделить все», а затем кнопку «ОК». рис. Окно установки шрифтов После описанных процедур шрифты должны установиться. Если этого не произошло, посоветуйтесь с системным администратором. Как мне сделать доступными символы
шрифтов Для этого перейдите в режим изменения символа, укажите на палитру шрифтов, затем укажите шрифт со значками и нажмите кнопку «Создать маркеры» (CreateMarkers). Далее если вы перейдете к палитре символов, то вы увидите вновь созданные символы. рис. Диалог установки параметров текста. Далее перейдите на закладку "Маркеры" и вы должны увидеть в списке созданные маркеры из символов шрифта. рис. Палитра символов с установленными шрифтами Как установить источник данных ODBC для Oracle 7? Для этого необходимо открыть «Панель управления»
Windows. рис. Панель управления Далее нужно нажать два раза левой кнопкой мыши на иконке,
где написано ODBC. Далее рис. Окно с источниками ODBC В этом окне выберите закладку «System DSN» («Системный
DSN») и нажмите кнопку рис. Окно добавления источника ODBC
Выберите драйвер для обращения к базе данных Oracle (обычно это «Oracle73») и нажмите копку «Готово». Далее вам предложат заполнить форму, где нужно указать имя вашего соединения и алиас к базе данных, описание которого должно присутствовать в файле $ORACLE_HOME/NETWORK/ADMIN/tnsnames.ora Например, у нас есть в tnsnames.ora запись, соответсвующая удаленному серверу и названная RDBS. -------------------------------- Фрагмент файла tnsnames.ora ---------------------------------------------- rdbs.world = Тогда форма может выглядеть следующим образом: рис. Окно установки имени и описания источника ODBC где, После заполнения всех пунктов нажмите «ОК» и источник данных добавится. Далее закройте панель управления и можете работать из Arcview с удаленными базами данных.
Как добавить тему из базы данных Oracle? Добавить можно только точечные объекты
(!!!). Используя имеющуюся в ArcView функцию SQL-соединение, Вы можете
соединяться (связываться) с сервером баз данных, таких как Oracle или
Sybase, и выполнять SQL-запрос для извлечения из них записей. Записи,
к которым Вы обращаетесь, станут таблицей в вашем проекте. Затем эту
таблицу можно использовать подобно любой другой таблице ArcView. рис. окно проекта Сделайте активным окно проекта. Выберите пункт меню «Проект->Связь с SQL сервером...» Откроется диалоговое окно, показанное ниже. Это окно позволяет установить соединение с сервером баз данных и формировать SQL-запросы для получения записей из базы данных. Записи, полученные по вашему запросу, станут таблицей в вашем проекте.
Опции диалогового окна Соединение (Connection) Этот ниспадающий список
показывает имена доступных источников данных, с которыми вы можете соединиться. Источники данных ODBC конфигурируются с использованием
программы Администратора ODBC или опции ODBC в Панели управления (Control
Panel) Вашей системы. Посмотрите раздел справки Как установить источник
данных ODBC? Соединить (Connect) Показывает диалоговое окно Имя и пароль пользователя, в котором вы вводите требуемую информацию по серверу базы данных, с которым вы хотите соединиться. Разъединить (Disconnect) Завершает текущее соединение с базой данных. Содержимое всех таблиц, созданных в результате запроса, будет уничтожено. Таблицы (Tables)Выводит список таблиц в текущей базе данных. Если вы щелкнете на имени таблицы, ArcView покажет все столбцы таблицы в окне списка Столбцы. Когда вы дважды щелкнете на имени таблицы, ArcView вставит имя таблицы в текстовый бокс Из (From). ArcView вставляет запятые между именами нескольких таблиц. Порядок расположения имен таблиц не имеет значения. Столбцы (Columns) Выводит список столбцов в выбранной таблице. Когда вы дважды щелкнете на имени столбца, ArcView вставит имя столбца с префиксом таблицы в текстовый бокс Выбрать. ArcView вставляет запятые между именами нескольких столбцов. Если Вы выбираете пункт <Все Столбцы>, ArcView вставляет звездочку группового символа (*) в текстовый бокс Из (From). Владелец (Owner) Определяет владельца(цев) таблиц баз данных, перечисленных в списке Таблицы. Если вы не определите имя, то в список будут включены только таблицы, принадлежащие текущему пользователю. Select (Выбрать) Определяет столбцы для поиска. Если вы включаете несколько столбцов в предложении Выбрать, отделите имена столбцов запятыми. Внесите в список столбцы в том порядке, в котором вы хотите их отыскивать. Если одинаковое имя столбца есть в нескольких таблицах в предлагаемом списке поля Из, перед именем столбца нужно ввести имя таблицы и точку (.). From (Из) Определяет таблицы, содержащие искомые столбцы. Where (Где) Указывает запись для поиска. Вы можете
использовать ограничение Where для определения записей из таблиц, поименованных
в ограничении From, которые появятся в результате оператора Select.
Записи выбираются в соответствии с условиями, перечисленными в ограничении
Where. Например, вы можете выбрать все магазины в Краснопресненском
районе, объем продаж которых увеличился по сравнению с предыдущим годом
(Продажи96 > Продажи95). Ограничение Where использовать необязательно.
Если вы не включите эту опцию, запрос выберет все записи. Запрос Посылает запрос к поименованному серверу
базы данных. Доступные для вас базы данных будут перечислены в диалоговом боксе Соединение. Выберите нужную базу данных. Выберите кнопку Соединить (Connect). Появится окно Вход в систему (Login). рис. окно ввода имени и пароля пользователя Напечатайте соответствующую информацию соединения в новом
диалоговом окне, т.е. введите имя пользователя и пароль. Если кнопка
Соединить затенена (недоступна), а кнопка Отключить активизирована,
значит связь с базой данных установлена. Список главных (host) таблиц
базы данных, связанных с этой базой данных, появится в поле Таблицы. Вы также можете вводить вручную значения для полей SELECT ... FROM ... WHERE. Итак, вы получили таблицу, в полях которой обязательно
должны быть поля с координатами X и Y. Чтобы сформировать тему вам необходимо
перейти в окно Вида и выбрать пункт меню Опции диалогового окна Категория Щелкните мышью на кнопке, обозначающей
тип событий, который вы хотите добавить в Вид. Добавление событий XY Таблица Ниспадающий список показывает все таблицы вашего проекта. Выберите таблицу, которая содержит события XY. Когда Вы выбираете таблицу, ArcView читает названия полей в таблице, чтобы найти заданные по умолчанию. X поле Поле в таблице, которое содержит X-координату или данные по долготе Y поле Поле в таблице, которое содержит Y-координату или данные по широте. Нажмите OK, чтобы добавить в Вид источник событий. Примечание: Если вы хотите выбрать поле
в таблице, но не видите его в ниспадающем списке, возможно, что это
поле было спрятано или переименовано с помощью псевдонима. В обоих случаях,
чтобы вызвать это поле и сделать его видимым, Вы можете открыть диалоговое
окно Свойства таблицы. рис. окно добавления темы-события
Чтобы включить опцию выбора кодировки в ArcView необходимо прописать в /ETC/stratup строчку av.SetCodepageConvert(true) Материал взят с сайта http://gis.irk.ru Существует в Интернете интересный сайт http://gis-lab.narod.ru. Далее будет опубликованы вопросы и ответы с этого сайта.
Автоматическая установка рабочей папки
Тем, кто часто создает проекты Arcview, наверное, задается
вопросом, как сделать так, чтобы рабочая папка (Working directory)
по умолчанию была не c:\windows\temp или c:\gis\arcview3,
то есть какая-то одна (заданная в лучшем случае переменной HOME,
см. "Добавление
пользовательских проекций к Arcview"), а, например, была равна
той папке из которой арквью вызывается. Самый простой способ сделать это, изменив в свойствах ярлыка вызывающего проект Arcview рабочую директорию. Но этот способ недостаточно гибок, так как не очень удобен тем, кто держит не несколько настроенных проектов и только их использует, а постоянно создает проекты для временных операций с данными, при этом папки из которых загружаются данные могут быть самыми разными. Сделать так достаточно просто, нужно добавить специальный скрипт и добавить две переменные окружения PATH и HOME (если это еще не сделано): По шагам
Скрипт должен иметь следующее содержание: aproject = av.GetProject Шаг 2. Изменить системную переменную Path, добавив путь
к папке Arcview Шаг 3. Добавить переменную HOME если она еще не добавлена, о том как это сделать можно прочитать в заметке "Добавление пользовательских проекций к Arcview". Ее значение должно быть равно тому пути, который вы добавили к переменной PATH. Шаг 4. После этого, находясь в нужной папке с помощью Windows Commander, Far или другого файлового менеджера, достаточно набрать default.apr, как у нас откроется проект в котором уже будет прописана как рабочая папка, то есть та папка из которой вы запустили default.apr, эта же папка будет появляться первой при добавлении тем. Совет 1. Можно еще больше упростить задачу и создать файл av.bat, в который добавить одну строчку default.apr. Файл av.bat поместить в рабочую директорию Arcview по умолчанию. Тогда запускать настроенный проект будет еще проще, просто набрав av в командной строке. Совет 2. Файлу deafult.apr, после установки скрипта лучше назначить атрибут "только для чтения".
Подключение скриптов (Arcview 3.x) Подключить скрипт очень просто: Script\Load System Script... Скрипт можно считать подключенным, после этого вы можете
запустить его выбрав Как создать кнопку и подключить к ней скрипт прочитать здесь. Подключение кнопки и назначение ей скрипта (Arcview 3.x)
Для того, чтобы создать кнопку и подключить к ней скрипт нужно выполнить следующие операции: 1. Понять в какую группу документов должна быть подключена
эта кнопка: Views, Tables, Charts, Layouts, Scripts или какую-то другую.
Отличие их состоит в том, что простая кнопка после нажатия
немедленно выполняет какую-либо операцию, например открывает окно "Добавить
тему", а инструмент переключает действие в особый режим, а само
действие выполняется только после использования это инструмента, например
инструмент Identify. Допустим вам нужно добавить простую кнопку. Следовательно
выбираем категорию Buttons. На этом процесс подключения кнопки можно считать завершенным. Описание других полей заполнение которых не обязательно:
Соответственно, если ваша цель - сделать так, чтобы у вас в проекте была такая же кнопка как в проекте товарища, но это невозможно сделать путем загрузки соответствующего расширения, то проще всего добавить кнопку так как указано выше и присоединить к ней скрипт добытый путем указанным здесь. Существую также экзотические случаи, когда создается новый тип документа аналогичный существующему, например расширением Automatic Tiled Layouts создается группа Tiles полностью аналогичная группе Layouts, но подключаемые к группе Layouts расширения не будут автоматически подключаться к группе Tiles, что может быть очень неудобно, например тем, что нельзя воспользоваться таким удобным расширением как Graticules and Grids, которое работает только в Layouts, но так как эти группы полностью аналогичны, то обмануть расширение можно способом указанным выше, скопировав кнопку и все ее параметры в группу Tiles из группы Layouts.
Конвертация
значений координат в формате
Совершать данное преобразование необходимо для того, чтобы полученные координаты можно было потом импортировать в Arcview, иначе сделать точечную тему из текстового файла со значениями координат в формате DDMMSS невозможно. Существует много способов осуществить данную конвертацию рассмотрим 3 основных (в порядке эффективности). 1. Правильно настроить GPS (подробнее) Как правило, если вы часто осуществляете импорт данных из GPS в Arcview и не используете для этого специальных программ типа Oziexplorer, для того чтобы не мучаться с переводом координат проще всего просто настроить GPS так чтобы он отображал значения координат в формате dd.dddd. Правда это не очень удобно для тех, кто ориентируется в поле по топокартам с нанесенной координатной сеткой. С другой стороны и саму координатную сетку можно сделать в этом формате. 2. Использовать специальный скрипт Arcview (загрузить скрипт) О том как загрузить и выполнить скрипт в Arcview описано
здесь. Особенности работы скрипта В этой таблице должно присутствовать 2 столбца (общее количество может быть больше) в которых должны быть записаны значения координат в следующем формате DDMMSS то есть пробелов между цифрами быть не должно, например 505050.3214. В процессе работы скрипт попросит указать название столбца в котором записаны значения широты и столбца в котором записаны значения долготы. Затем попросит ввести название для результирующих столбцов. После этого скрипт выполнит преобразование и запишет в новые столбцы с названиями которые вы вводили значения координат в формате DD.DDDDD. 3. Пересчитать значения координат самому в Excel Формула для пересчета очень проста A+((B)/60)+(C)/3600, где А - градусы, B - минуты, С - секунды Для тех кому лень вводить формулы и создавать таблицу, можете загрузить готовую здесь. От вас требуется только ввести свои координаты и скопировав столбцы с результатом вставить их в новую таблицу или текстовый файл, который можно будет потом импортировать в Arcview. Хотя проще это сделать через DBF.
Как
расчитать площадь полигона(ов) и добавить
Существует несколько способов определить и внести в атрибутивную таблицу площадь полигона(ов) Способ 1-ый - Визуальный - заключается в
том, что вы, сделав тему редактируемой Theme\Start Editing, вы выбираете
один из ее полигонов инструметом Pointer
В этой строке также отображается и другая информация о
полигоне, такая как периметр полигона, длина сегмента. Способ 2-ой - Расчет атрибута c внесением его значения
в таблицу без применения скриптов- может проводится для нескольких
объектов сразу (хотя ничего не мешает определить площадь только одного
полигона). Заключается в получении в существующем поле атрибутивной
таблицы значения площади соответствующего полю этой таблице полигона.
[Shape].ReturnArea 6. После выполнения этого запроса в поле, выбранном для записи значений, появятся значения площади для выбранных записей. Недостаток этого метода заключается в том, что если вы
работаете с темами находящимися в проекции Lat\Long то результаты измерения
площадей вам врядли будут полезны, это также касается спроектированного
вида, то есть если исходная тема(ы) в проекции Lat\Long проектируются
в любую проекцию, то оценка площади все равно будет производится в единицах
измерения исходного материала. Способ 3-й - Расчет атрибута с помощью скрипта. Подключив этот скрипт можно расчитывать площадь объектов зависящую от проекции вида и единиц измерения которые выставляются в параметрах вида, также этот скрипт успешно работает и в неспроектированном виде с темами спроектированными в Arcinfo, Arcview Reprojection Utility и т.д. Как
установить связь с базой данных MS ACCESS Этот раздел посвящен совместному использованию взаимодействию ГИС ArcView 3.2a и СУБД MS ACCESS 2000. Приведенные примеры взяты из разрабатываемого сейчас инициативного проекта "Флора Таймыра" (Поспелова Е.Б., Поспелов И.Н. - Таймырский заповедник, Матвеева Н.В., Заноха Л.Л.- БИН РАН) А. Установка связи с нужной таблицей. Предположим, что у вас имеется база данных, в которой имеется информация, относящаяся к объектам, изображенным на карте. Вы хотите построить одну или несколько тематических карт, отображающих эту информацию, не вводя соответствующие данные в атрибутивную таблицу темы. Обязательное условие – таблица в базе данных и атрибутивная таблица темы должны иметь поле, содержащее одни и те же данные. В приводимом ниже примере это данные по более чем 80 точкам Таймырского АО, где проводились ботанические исследования и имеются списки сосудистых растений. Атрибутивная таблица темы содержит условные символьные коды участков. В таблице базы данных для каждого участка приводятся различные примеры, такие, как число видов растений, степень изученности участка и т.д.
По опыту, лучше заранее непосредственно в ACCESS создать запрос, содержащий все поля, значения которых нужно отобразить на карте, так как процесс создания запроса в ACCESS весьма прост, а для SQL-связи запрос и таблица равнозначны. В моем случае создан запрос LFMap, содержащий поля кода участка, принадлежности его к определенной растительно-ландшафтной зоне, числа видов сосудистых растений и класса изученности флоры участка. Так как тематика данного ресурса не включает вопросы по работе с ACCESS, то по вопросам создания запросов обращайтесь к соответствующей документации Для создания связи с базой данных необходимо, чтобы активным было окно Проекта ArcView и выбрать в меню Project – SQL connect…
Появится окно, где вверху в поле Connection необходимо выбрать База данных MS ACCESS, нажать кнопку Connect, после чего будет предложено выбрать конкретную базу данных. *Примечание – для удобства работы лучше, чтобы база данных была в том же каталоге, что и проект, можно также создать связанную с основной отдельную базу данных в этом каталоге, так как при последующих открытиях проекта будет предлагаться выбрать связанную с проектом базу данных, по умолчанию будет предложен каталог, где находится проект. После установления связи в левом окошке “Tables” диалога SQL Connect появятся все таблицы и запросы базы данных. 1. Дважды щелкнуть по нужному объекту базы данных. После этого все поля таблицы или запроса появятся в окошке “Columns”, а имя самой таблицы – в предложении “from”. 2. Дважды щелкнуть по каждому из полей, которые нужно включить в SQL-запрос в окошке “Columns”, они появятся в предложении “Select”; можно также щелкнуть на строчке <All Collumns>, тогда в связанной таблице будут выведены все поля исходной таблицы. 3 Ввести вразумительное имя в поле Output table.
4. Об использовании предложения Where – см. ниже. 5. Нажать Query. Связанная таблица появится отдельным окном. *Примечание: Если у вас в данный момент запущен ACCESS, и связываемый запрос или таблица открыт в ACCESS в режиме конструктора, то вы получите сообщение об ошибке. 6. Закрыть диалог SQL-connect (или провести ту же операцию с другой таблицей). 7. Путем использования меню Window и перетаскивания окон сделать так, чтобы на мониторе были одновременно видны атрибутивная таблица темы, к которой надо привязать данные из связанной таблицы, и сама связанная таблица. Делать атрибутивную таблицу редактируемой необязательно, связанная таблица редактируемой по определению быть не может. Если атрибутивная таблица темы не обнаруживается, значит, после загрузки в проект темы к ней не разу не обращались. Тогда в окне View нужно сделать нужную тему активной и нажать кнопку Open theme table (где нарисована таблица). Появится таблица с именем “Attributes of <название темы>” – это и есть атрибутивная таблица. Поочередно выделить общие поля обеих таблиц – в приводимом примере – поле “Key” атрибутивной таблицы и поле “Ключевые участки: код” связанной. 8. Сделать активным окно атрибутивной таблицы и нажать кнопку Join (если кнопка неактивна, значит вы не выделили в какой-то из таблиц поля связи, или окна связываемых таблиц – атрибутивной и внешней не являются первым и вторым соответственно в иерархии окон). После этого в атрибутивной таблице появятся все поля связанной. ВНИМАНИЕ! Если активным будет окно связанной таблицы, то результат получится обратный ожидаемому – поля атрибутивной таблицы появятся в внешней связанной, что, как я полагаю, вам не надо.
9. Перейти в окно вида и при помощи двойного щелчка по теме строить легенду по желаемому полю. (я построил легенду типа Graduated Symbol по полю Count - Ключевые участки код – число видов сосудистых растений). Б. Более сложный случай – несколько одновременно загруженных в Вид тем, основанных на одной связанной таблице. Как видно из предыдущего примера, в полученной в результате связывания таблице имеется 3 поля, по каждому из которых можно построить отдельную тематическую карту. Можно конечно, менять легенду в одной теме с «привязанными» атрибутивными данными, но, как мне представляется, удобнее иметь все эти темы в виде одновременно и просто управлять их отображением. Как это сделать? Предлагаю следующий алгоритм (алгоритм 2).
В. Еще более сложный случай – связь с таблицей, где одной записи атрибутивной таблицы темы соответствуют много записей связанной таблицы – использование предложения Where SQL. В данном разделе речь идет о связывании атрибутивной таблицы темы с таблицей базы данных, содержащей множественные данные, относящиеся к определенному географическому объекту. В приводимом примере имеется выше описанная тема, показывающая расположение участков с обследованными флорами сосудистых растений, атрибутивная таблица которой содержит только условные коды ключевых участков; и таблица в базе данных ACCESS, имеющая поля код вида растений – код ключевого участка – балльная характеристика распространения вида на данном участке. Необходимо для определенного вида построить точечную карту распространения. Для этого нужно выполнить следующие действия.
Пример выражения: `Q1`.`SpeciesIndex`=420 В русифицированном ArcView синтаксис выражения почему-то меняется, и его нужно ввести вручную. Оно должно выглядеть так: ([Q1.SpeciesIndex])=(420) Примечание. К сожалению, отбор можно проводить только по числовым полям внешней таблицы. Причины этого мне не вполне ясны, в справочной системе имеется намек, что драйвер ODBS, поставляемый с MS ACCESS, не полностью поддерживает связь с приложениями «made by не-Microsoft», хотя в руководстве пользователя ArcView приводится пример отбора именно по символьному полю (правда, для MS ACCESS 97). Если есть необходимость проводить отбор по символьному полю, то можно создать запрос с нужной выборкой непосредственно в ACCESS и связывать данные с ним.
В приведенном примере я построил легенду по полю «Активность», отражающему распространение вида в данной точке, и несколько ее модифицировал. Серыми точками показана исходная тема, показывающая расположение всех участков с обследованными флорами сосудистых растений.
Добавление пользовательских проекций к Arcview Для того, чтобы Arcview добавил к своему списку стандартных проекций используемые вами, нужно создать и запустить скрипт, в котором прописать какие проекции вы хотели бы видеть в Arcview. Естественно, те же проекции вы можете получить и настроив проекцию через View\Properties\Projection\Custom, но если вам наконец это надоело, то пора научить Arcview автоматически добавлять в стандартные проекции проекции с вашими параметрами. 1. Создание файла с пользовательскими проекциями default.prj Список проекций добавляемых в Arcview при использовании файла default.prj:
Посмотреть на готовый скрипт создающий default.prj для 3-х проекций Albers'a и 23 зон GK. Вы можете также создать скрипт самостоятельно, он должен иметь примерно следующее содержание: 'создать группу проекций и задать им название 'создать проекцию Albers'a с пользовательскими параметрами 'Добавить проекцию в список 'Создать файл default.prj с дополнительными проекциями Если вы хотите добавить проекцию Гаусса-Крюгера, то это можно сделать так r = Rect.Make(103@"-56".AsNumber,164@"-7".AsNumber) 2. Настройка среды Windows для понимания Arcview файла привязки default.prj Для того, чтобы Arview нашел файл с дополнительными проекциями в определенной директории (например c:\GIS\Arcivew3\), нужно прописать переменную окружения Windows, называется она - HOME. Для этого нужно, в зависимости от установленной операционной системы: Windows 95/98 set HOME=C:\Gis\ArcView3\ - путем в данном случае
является папка в которую был установлен Arcview Windows 2000 3. В эту же папку переписать файл default.prj 4. Перегрузить компьютер
Надо ли русифицировать Arcview - заметки пользователя Special thanks to: И.Поспелов, Таймырский заповедник Я начал работать с ГИС вообще и с ArcView в частности сравнительно недавно, и когда узнал, что ArcView 3.2a можно русифицировать при помощи специального патча, закачиваемого с ftp.esri.com, или здесь воспользовался этой возможностью, т.к. языками владею не очень сильно и вообще предпочитаю локализованные программы. Однако в процессе работы я столкнулся с целым рядом проблем, плоды которых пожинаю до сих пор и хотел бы предупредить пользователей об этом. Если вы собираетесь работать с ГИС не только на своей машине, но и желаете, чтобы ваши проекты были доступны другим (а большинство специалистов работает с нерусифицированным ArcView), то при принятии решения о русификации рекомендую учесть мой опыт. Во-первых, некоторые проекты, созданные в русифицированной версии, просто могут не открыться на машине с нерусифицированным ArcView. Особенно это касается проектов, имеющих SQL - связь с базой данных (в моем случае - ACCESS 2000). При загрузке проекта SQL-запрос к базе данных может быть просто игнорирован системой. С чем это связано, я не знаю, но хочу отметить интересное наблюдение - синтаксис SQL-запроса после русификации почему-то меняется и не соответствует ни примерам, приведенным в русском Help-e, ни даже примерам из руководства пользователя ArcView. Когда я с эти столкнулся, мне пришлось подбирать правильный синтаксис просто методом научного тыка. Во-вторых, если ваш проект даже и открылся в нерусифицированном Arc View, то строка меню в нем почему-то русифицируется. Это, конечно, не слишком сильная беда, но смотрится довольно дико. Кстати, при установке на русифицированную версию стандартных модулей (SpatialAnalyst, 3D Analyst и др.) строка меню частично дерусифицируется. В-третьих, под русифицированной версией ArcView некоторые модули работают криво или вообще не работают. Конкретный пример- Sim's freehand drawing tool, который я весьма интенсивно использую. В русской версии я долго пытался менять snap tolerance - безрезультатно. Я наивно решил, что данная возможность не работает вообще и забыл про нее, пока не переинсталлировал ArcView без русификации. После этого все заработало! Были также проблемы и с некоторыми скриптами, взятыми с ArcScripts, которые (проблемы) исчезли в нерусифицированной версии. Недавно обнаружилась еще одна проблема с проектами, созданными
в русской версии. При импорте подобного проекта в ArcGis 8, он теряет
способность открываться в ArcView 3.2а, (сообщение Segmentation Violation),
ДАЖЕ ЕСЛИ В ARCGIS 8 С НИМ НИЧЕГО НЕ ДЕЛАТЬ!. С проектами, созданными
в нерусифицированной версии, этого не происходит. В таком случае русифицируется только справка, но не система и все работает (в том числе и кнопка контекстной справки). Правда могут возникнуть проблемы с переводом (вернее, правильной интерпретации соответствия английских команд их русскому переводу в справке). В начале работы на русифицированной версии выражение "Полный экстент" вводило меня в ступор, и теперь я это выражение использую в качестве эквивалента выражению "Полный .…ец" при дамах. :) Вообще, подобная инсталляция позволяет и привыкнуть к английскому интерфейсу, разобраться в терминологии, и получить помощь. Если вы всерьез собираетесь заниматься ГИС и использовать при этом ArcView 3.x, то рано или поздно придется отказываться от русификации, а в моем случае это обернулось потерей времени на создание заново ряда довольно сложных проектов.
Примение TRLegend для работы с растровыми топокартами Если вы работаете с растровыми топокартами и не можете / не хотите / не собираетесь их векторизовать, можно попытаться использовать их по максимуму. А именно, правильное цветоделение (именно цветоделение для разделения карты на тематические слои по цвету, а не подготовка к векторизации), может избавить от необходимости векторизовать топокарты (если они используются только для ориентирования и привязки). Если ваши топокарты цветоделены в соответствии со следующей раскладкой цветов:
То вы можете использовать расширение TRLegend для более эффективной и удобной работы с этими топокартами. Расширение добавляет новую кнопку в кнопочную панель
Получение основных пространственных характеристик объектов В статье рассматривается получение нескольких основных пространственных характеристик объектов без использования дополнительных скриптов, расширений и т.д. Те, кто пользовался или пользуется Mapinfo недоуменно могут отметить кажущееся отсутствие в Arcview метода быстрого получения площади объекта или его пространственных координат). Они действительно упрятаны достаточно далеко, но в этом есть своя логика. Обычно визуальная оценка параметров объекта, довольно бессмысленная задача, а вот получение этих параметров в таблицу было бы неплохо. При желании можно организовать постоянный мониторинг площадей, периметров и т.д. как это делает Arcinfo (хотя она не следит за координатами точек). Это имеет смысл если вы в Arcview выполняете серию пространственных операций изменяющих площадь объектов и вам нужно следить как она изменяется. Открываем таблицу и создаем в ней поле(поля) с необходимыми параметрами (для площадных объектов - area, perimeter, для линейных - length, для точечных - X,Y). Открываем таблицу для редактирования и делаем активным нужное нам поле. Вызываем инструмент calculate. Выражение обращается за пространственными характеристиками объекта к полю shape, которое оказывается все их содержит. 1. Полигональный объект: Площадь (Area) Формула должна иметь следующий вид: Area = [shape].returnarea Понятно, что этот запрос неудобно использовать при работе со спроектированными видами, так как он (запрос) будет возвращать площадь не учитывая проекцию вида (см. статью "Вычисление площади"). Однако если вы работаете с вектором уже находящимся в проекции, то это самый быстрый способ расчитать площади для полигонов. Периметр Формула должна иметь следующий вид: Perimeter = [shape].returnlength 2. Линейный объект: Длина Формула должна иметь следующий вид: Length = [shape].returnlength 3. Точечный объект: Для получения координат точек, нужно ввести 2 формулы, сначала Long = [shape].getx, а затем Lat = [shape].gety Как вы наверное догадываетесь, эти выражения есть реализация запросов на языке Avenue через инструмент Calculate. С помощью этого инструмента можно получать и другие пространственные характеристики объекта(ов).
Компрессия индексированных растров (сравнение)
Индексированные растры по определению должны хорошо компрессироваться поскольку содержат однородные цветовые поля. Конечно, речь идет о правильно индексированных растрах (растрах с определенным, небольшим количеством цветов). Обычно такими растрами представляются топографические карты, тематические карты. В данном обзоре речь пойдет о форматах которые можно, так или иначе, использовать в Arcview 3.2 в качестве тем (формат GIF, например, не рассматривается, поскольку, хотя его можно подключать через hotlink, в качестве темы подгрузить его невозможно). Сразу оговорим, что одним из самых эффективных алгоритмов сжатия является алгоритм Lempel-Zip-Welch (LZW) применяемый в формате GIF, LZW компрессия также поддерживается в форматах TIFF и IMG. К сожалению использовать его в ГИС можно ограниченно из-за странной политики ESRI по поддержке растров компрессированных с помощью этого алгоритма. Дело в том, что патент на этот алгоритм принадлежит фирме Unisys и чтобы включить поддержку LZW компрессированных данных в Arcview нужно сначала заключить лицензионное соглашение с этой фирмой. Подробнее об этом соглашении можно прочитать в статье "Unisys и использование LZW-TIFF в Arcview". Для тестов использовались топографические карты размером 3200х1600 пикселов, количество уникальных цветов 11, унифицированная цветовая палитра. Количество карт 20 шт., насыщенность информацией от 10 до 95%. Сжатие производилось в следующие форматы (алгоритмы):
Размер несжатых растров - 48800 Кб
Скорость перерисовки: проводился только для TIF-LZW для проверки скорости отрисовки всего растрового поля в Arcview 3.2. Количество карт - 950 листов. Цель: проверка замедления отрисовки на декомпрессию. Проверка для остальных форматов не производилась.
Небольшие выводы: Как видно из таблицы результатов на первом месте по сжатию алгоритм LZW - если вам удалось достать\получить библиотеку обеспечивающую его поддержку в Arcview GIS, то советую пользоваться для сжатия карт именно этим алгоритмом, он далеко оставляет позади конкурентов в области losless компрессии. Если же с лицензией ничего не получается, то неплохим вариантом является packbits компрессия, к томуже абсолютно бесплатная, не требующая никакой лицензии. Unisys и использование LZW-TIFF в Arcview
Вопрос использования компрессированных растров в Arcview по-моему скромному мнения незаслуженно оставляется без внимания. А ведь решение этой проблемы может помочь решить проблемы с нехваткой дискового пространства, т.е. сокращению объемов файлов, те, кому приходится поддерживать каталоги информации меня поймут. В данном случае речь идет об сжатии без потери качества, поэтому такие форматы как MrSID и JPEG, дающие больший коэффициент сжатия, мы не рассматриваем. Одним из самых эффективных алгоритмов сжатия, которому в настоящее время нет альтернатив является алгоритм Lempel-Zip-Welch (LZW) применяемый в формате GIF, TIFF. К сожалению использовать растры сжатые этим алгоритмом в ГИС можно ограниченно. Дело в том, что патент на этот алгоритм принадлежит фирме Unisys (www.unisys.com) United States Patent No. 4,558,302 и чтобы включить поддержку LZW компрессированных данных в Arcview нужно сначала заключить лицензионное соглашение с этой фирмой. После того, как это соглашение заключено, любой дистрибьютор компании ESRI, в нашем случае Дата+ безвозмездно предоставляет библиотеку avopt.dll, скопировав которую в каталог Bin32, каталога установки Arcview, доступ к таким растрам открывается. Подробнее о лицензии на LZW компрессию можно почитать здесь: http://www.unisys.com/about__unisys/lzw/ Для получения лицензии нужно заполнить "вопросник" и отослать его по адресу LZW_INFO@UNISYS.COM по этому же адресу можно задать вопросы и получить этот же вопросник. После некоторого времени ожидания, вы по факсу указанному в заполненной анкете получаете лицензионное соглашение. После его подписания...если вы согласны потратить 2500$ в уплату лицензионных взносов, ESRI совершенно бесплатно предоставит вам библиотеку поддержки LZW TIFF для Arcview. Здесь можно посмотреть само лицензионное соглашение, которое присылают по факсу: страница 1 страница 2 страница 3 страница 4 Вообще резонным кажется вопрос, почему тысячи компаний поддерживают LZW на входе и на выходе, а ESRI не удосужились сделать так, чтобы пользователям Arcview не нужно было проходить процесс лицензирования самим. Представители Arcview объясняют это целями уменьшения стоимости их продуктов, того же Arcview. Но тогда не понятно, как производители shareware, например IrfanView могут себе это позволить, так же как Adobe (Photoshop & Co), а ведь их цена даже меньше чем стоимость Arcview. Большое недовольство также вызывает то, что пользователю самому приходится проходить процесс лицензирования, ведь реализация модуля поддержки LZW-компрессии даже на платной основе, скорее всего сняла бы вопрос о лицензировании. Большинство серьезных фирм, думается, не раздумывая купили бы модуль, только бы не влазить в процедуру лицензирования. Короче говоря, политика ESRI похожа на "кидание" пользователя на едине со своими проблемами, "разбирайтесь, мол, сами". Печально, но не смертельно. Подробности: License
Information on GIF and Other LZW-based Technologies Ходят слухи, что в 2003 году Unisys открывает доступ к технологии на бесплатной основе. Ждать недолго :)!
Трансформация и привязка растровых данных в ImageWarp
Один из самых простых методов пространственной привязки растровых данных не требующий отдельного програмного обеспечения, кроме бесплатно распространяемого расширения ImageWarp (Автор: Kenneth R. McVay) для Arcview и модуля Spatial Analyst. Обычно трансформацию растровых данных осуществляют в других приложениях, средствами Arcview, без привлечения платных модулей (таких как, например, Image Analysis) осуществлять трансформацию растров невозможно, зато можно использовать средства Spatial Analyst для трансформации grid'ов (растровая модель данных используемая в Spatial Analyst). Конечно, если модуля Spatial Analyst в наличие не имеется, то лучше воспользоваться отдельной программой, работающей с растрами напрямую. Если вы все-таки решили привязать растр не выходя из Arcview.
ImageWarp переведет растр в грид - растровую модель данных используемую Spatial Analyst'ом. Грид может быть перепроектирован методами Spatial Analyst. После трансформации грид переводится в растр обратно и сохраняется в нужном формате. Конечно в целях эффективности и экономии времени следует попробовать найти другой способ трансформации, так как перевод в грид и обратно в растр требует достаточно много времени. Но для первого знакомства с привязкой растров этого вполне достаточно. Hotlink на область (уменьшение точности hotlink'а)
при участии И.Поспелова Связывание объектов темы ArcView с внешними файлами используется довольно часто - как правило, это графические изображения, WEB-страницы, текстовые документы и т.д. С описываемой ниже проблемой пришлось столкнуться при привязке фотографий к карте местности. При этом использовался широко распространенный просмотровщик графики IrfanView, достоинство которого - в отсутствии необходимости инсталляции (достаточно переместить файлы IrfanView в каталог с любым именем, и программа будет работать оттуда, в том чиcле с CD). В Help ArcViev 3.xx приведен образец внедряемого в проект скрипта для запуска любого приложения для открытия документов, прописанных в поле горячей связи атрибутивной таблицы темы. Этот скрипт был переработан и использован для вызова фотографий, привязанных к точкам с указанием направления съемки. При использовании точечной темы с крупными символами выявиляется следующая неприятность - на мониторах с высоким разрешением (1024х768 и выше) инструментом Hotlink стало довольно трудно попасть в объект (при использовании разрешения 1280х1024 иногда это сделать еще сложнее, причем попасть надо было в весьма условный "центр точеного объекта" - символа). В процессе анализа проблемы выяснилось, что в системном запросе, определяющем точность инструмента (кстати, не только Hotlink, а и инструмента выбора) зафиксирована область в 3 пиксела экрана. Впрочем, это объяснимо - когда разрабатывалась ArcView для Windows (середина 90х годов) мониторы с разрешением выше 1280х1024 были не столь широко распространены, как сейчас. Область поиска самого инструмента Hotlink по умолчанию равняется 3 пикселам, что недостаточно на больших экранных разрешениях. К сожалению запрос FindbyPoint(p), которым собственно и осуществляется поиск, не позволяет менять этот допуск. Решением проблемы было изменение самого принципа действия инструмента - поиск объектов было необходимо реализовать не по точке, а по области экрана. Для этого был разработан нижеприведенный скрипт.
Принцип его работы прост, используется не поиск по точке (FindbyPoint) а поиск по области (окружности - FindbyCircle), что также позволяет интерактивно задавать эту область, чтобы не испытывать трудности с "попаданием" в нужный символ.
Задание области реагирования на hotlink, с помощью клавиши shift
Вызов внешнего просмотровщика для графики (IrfanView)
Удаление и копирование векторных и растровых тем из TOC
*TOC - table of contents, содержание, легенда. Область в окне Вида (View) где осуществляются операции по визуализации тем. Перед людьми работающими с большим количеством растровых, векторных тем часто встает задача, как выделив темы удалить их сразу и из View и с диска. Например это часто необходимо для отбора снимков (preview Landsat, ASTER). Аналогичная задача стоит в случае копирования выбранных тем в новую папку (например отобранных растров). Эти задачи довольно успешно решаются с помощью расширения для Arcview copyfiles.
Это расширение позволяет: 1. Скопировать в другую папку выбранные растровые/векторные
темы, в том числе темы Image Analysis'а, вместе с дополнительными файлами
avl, aux, rrd, sbn, sbx, tfw. 2. Удалить из вида и с диска выбранные растровые/векторные
темы, (кроме) Image Analysis'а.
Пока на этом все... P.S.: Если есть пожелания, замечания, предложения, а также если есть кому добавить что-либо, то пишите мне! |
||||||||||||||||||||||||||||||||||||||||||
|
Если я вдруг нарушил или ущемил чьи-то права, то
будьте добры сообщите мне и я срочно исправлю свою ошибку. Я не хочу
причинить кому бы то ни было вреда. Если вам что-то не понравится, заранее
прошу прощения.
|
||||||||||||||||||||||||||||||||||||||||||
|
Хостинг предоставлен Тюменским интернет-провайдером
Комтел
|
||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||
|
(C) 2001
Замараев Вячеслав Викторович.
Использование материалов сайта без согласия автора запрещено. |
||||||||||||||||||||||||||||||||||||||||||