Калькулятор растра (Spatial Analyst)

Калькулятор растра (Spatial Analyst)

Строит и выполняет выражение Алгебры карт с использованием синтаксиса Python.

Иллюстрация

Использование

Примечание:

Инструмент Калькулятор растра предназначен для использования в приложении только в качестве диалогового окна инструмента GP или в ModelBuilder. Он не предназначен для использования в скриптах и не доступен в модуле ArcPy Spatial Analyst.

Инструмент Калькулятор растров (Raster Calculator) позволяет создать и выполнить выражение Алгебра карт (Map Algebra), которое произведет вывод растра.

Используйте список Растры для выбора наборов данных и переменных, которые будут использоваться в выражении. В списке Инструменты содержится перечень часто используемых условных и математических инструментов, позволяющий легко добавить их в выражение. Численные значения (и символы математических операторов) можно добавлять непосредственно в выражение.

Полные пути к данным или данные, существующие в заданном параметре среды текущей рабочей области можно ввести в кавычках ( "" ). Числа и масштабы можно ввести прямо в выражение.

Операторы диалогового окна инструмента Калькулятор растра:

Многие инструменты и операции геообработки могут быть созданы как выражение алгебры карт с использованием стандартного синтаксиса Python.

Внимание:

При вводе имен инструментов обязательно проверяйте синтаксис имени. Если регистр букв неверен, выражение будет недействительно, и его не удастся выполнить, так как Python чувствителен к регистру.

Пример общего формата выражения алгебры карт с использованием инструментов геообработки:

Con(IsNull("streams"), 0, "streams")

  • Вам не нужно помещать выходное имя растра или знак = в выражение, т. к. выходное имя задано в параметре Выходной растр (Output raster) .
  • Не нужно оценивать входные данные как объект растра при использовании операторов.

Не составляет труда вырезать набор растровых данных, сформировав среду экстента и указав имя входного растра в выражении. extent environment ">extent environment and specifying the input raster name in the expression. При выполнении инструмента, выходные данные результирующего растра будут вырезаны на основе заданного экстента.

Чтобы создать растр с ячейками постоянного значения, укажите соответствующий экстент и параметры среды размер ячейки, и введите числовое значение в выражение.

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

Уровень приоритета Булевых операторов (

, & , ^ , | ) выше, чем у операторов сравнения ( < , <= , > , >= , == , != ). Поэтому, если в одном выражении используются Булевы и реляционные операторы, в первую очередь выполняются булевы операторы. Чтобы изменить порядок выполнения, используйте скобки.

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

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

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

Инструмент Калькулятор растра может быть использован в ModelBuilder, но помните следующее:

    Синтаксис выражения определяет, как должны быть заданы переменные. Если вы выберите переменную из списка переменных, она будет автоматически добавлена в выражение в текущем местоположении курсора. После проверки моделей:
      Имена слоев будут заключены в двойные кавычки ( " " ).

    Например, при выборе из перечня переменных inraster станет "%inraster%" в выражении.

    • В ModelBuilder, следующие типы переменных являются корректными входными данными для выражения:
      • String
      • Boolean
      • Числовые (двойной точности и длинное целое)
      • Данные (набор растровых данных, растровый слой, канал растра, файла слоя .lyr)
      • Инструмент Калькулятор растра , как правило, придерживается стандартного поведения связности моделей в ModelBuilder, отдельные исключения обусловлены требованиями к формулированию допустимого выражения алгебры карт. К ним относятся:
        • Переменные связаны с инструментом Калькулятор растров (Raster Calculator) , если они выбираются из перечня переменных. Все переменные автоматически перечислены в списке Переменные этого инструмента.
        • Если в выражении используется набор данных или переменная, будет создана связь между переменной и инструментом. Если вы удалите переменную из выражения, связь между переменной и инструментом также будет удалена.
        • Если вы удалите связь с переменной, переменная не удалится из выражения.
        • Не следует переименовывать переменную, соединенную с инструментом, т.к. переменная не будет переименована в выражении. Если вы переименуете ее, выражение будет некорректным.

        Конкретные Параметры среды хранения растра могут применяться к этому инструменту, если форматом входных растровых данных является не Esri Grid.

        • Для параметров среды Статистика растра (Raster statistics) поддерживается только задание значения параметра Вычислить статистику (Calculate Statistics) .
        • В параметрах среды Сжатие поддерживается только тип Сжатия . Параметры среды применяются только для выходных целочисленных данных. Сжатие не поддерживается растрами с плавающей точкой, поэтому данный параметр применим только для выходных целочисленных данных.
        • Параметр среды Размер листа поддерживается только для выходных растров в следующих форматах: TIFF, файловая база геоданных или многопользовательская база геоданных.

        Параметры

        Выражение алгебры карт, которое вы хотите запустить.

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

        • Список Растры определяет наборы данных, доступные для использования в выражении алгебры карт.
        • Список Инструменты предоставляет возможность выбора часто используемых инструментов.

        Выходной растр, полученный из выражения алгебры карт.

        Примечание:

        В Python, выражения алгебры карт необходимо создавать и выполнять с модулем Spatial Analyst, который дополняет функциональность библиотеки ArcPy языка Python.

        Смотрите Алгебра карт в Spatial Analyst, чтобы узнать о выполнении анализа в Python.

        Примечание:

        Более подробную информацию о создании выходных данных из выражения алгебры карт в Python см. Создание выходных данных из выражений алгебры карт (Creating output from Map Algebra).