Нефть и песок О стали Компрессор - подбор и ошибки Из истории стандартизации резьб Соперник ксерокса - гектограф Новые технологии производства стали Экспорт проволоки из России Прогрессивная технологическая оснастка Цитадель сварки с полувековой историей Упрочнение пружин Способы обогрева Назначение, структура, характеристики анализаторов Промышленные пылесосы Штампованные гайки из пружинной стали Консервация САУ Стандарты и качество Технология производства Водород Выбор материала для крепежных деталей Токарный резец в миниатюре Производство проволоки Адгезия резины к металлокорду Электролитическое фосфатирование проволоки Восстановление корпусных деталей двигателей Новая бескислотная технология производства проката Синие кристаллы Автоклав Нормирование шумов связи Газосварочный аппарат для тугоплавких припоев
Главная --> Промиздат -->  Координатное пространство 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 ( 66 ) 67 68 69 70 71

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

[inlayer1] + c:\input data\ingrid2 - [inlayer3]

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

C[in1ayer1] diff [inlayer2]) * [inlayer3]

[inlayer1] + Cc:\data\ingrid2 & [inlayer3])

[inlayer1] / C[inlayer2] - [inlayer3])

Когда на одном уровне задано две или более пар скобок, все выражения в скобках имеет одинаковые значения приоритета; поэтому первым из них обрабатывается выражение в самом левом наборе скобок :

C[in1ayer1] + [inlayer2]) / C[in1ayer3] !! [inlayer4])

C[in1ayer1] - [inlayer2]) >> C[in1ayer3] mod c:\spatial\ingrid4)

Скобки могут быть вложенными. Первым обрабатывается выражение на самом глубоком уровне вложенности:

C[inlayer1] + C[inlayer2] - C[inlayer3] >> [inlayer4]))) / [inlayer5]

[in1ayer1] >> CC [in1ayer2]) ! [in1ayer3])

C[inlayer1] diff C[inlayer2] - C[inlayer3] && C[in1ayer4] - [in1ayer5])))) div [in1ayer6]

Операторы с числами

В выражениях могут также использоваться числа: [in1ayer1] + 5 c:\data\ingrid1 > 8 [in1ayer1] diff 3

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

[inlayer] in {0, 3, 5, 8}

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

Результатом будет растр, каждая ячейка которого содержит значение 5.

9 + 20

Результатом будет растр, каждая ячейка которого содержит значение 29.

Операции с числами и растрами

Числа можно использовать для создания составных выражений: [in1ayer1] / [in1ayer2] + 5

[inlayer1] < 2 * 35

[in1ayer1] <= 40 - [in1ayer2] + 7

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

C[inlayer1] + 5) * 20

[inlayer1] / [inlayer2] - C5 - 2)

10 * C[in1ayer1] + (6 / C[in1ayer2] diff [in1ayer3])))



Правила Алгебры карт для функций

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

tanC[in1ayer])

foca1maxC[in1ayer1], rectangle, 4, 4) zona1minC[zone1ayer], [valuelayer])

Аргументы или параметры функций разделяются запятыми:

foca1minC[in1ayer1], circle, 6)

zona1maxC[zone1ayer], c:\data\va1uegrid)

У многих функций есть дополнительные параметры. Это могут быть ключевые слова, числа, имена таблиц или даже растры. Набор параметров зависит от конкретной функции:

se1ectboxC[in1ayer1], 45, 67, 200, B60)

foca1rangeC[in1ayer1], annulus, 2, 4)

zona1meanC[zone1ayer], c:\data\va1grid, NoData)

Составные выражения

Функции можно использовать в составных выражениях вместе с операторами, наборами данных грида, растровыми слоями, шейп-файлами, покрытиями и числами:

sinC[in1ayer1]) + [in1ayer2]

foca1sumC[in1ayer1], rectangle, B, B) * tanC[in1ayer2])

zona1minC[zone1ayer], [valuelayer]) - B

Всем функции имеют одно значение приоритета; таким образом, когда выражение включает несколько функций, они выполняются последовательно слева направо:

minC[in1ayer1], [in1ayer2], [inlayerB]) + absC[in1ayer4])

cei1C[in1ayer1]) * s1iceC[in1ayer2], eqarea, 10)

popu1arityC2, [in1ayer1], [in1ayer2], [inlayerB]) * tanC[in1ayer4])

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

CsinC[in1ayer1]) + foca1rangeCc:\data\ingrid2,circ1e,

7)) - 6

[in1ayer1] * Czona1maxC[in1ayer2] + e:\a1gebra\ingridB) + [valuelayer] / 8)

CmajorityC[in1ayer1], C[in1ayer2] - [inlayerB]), [in1ayer4]) && (л C[in1ayer5] - 10)) / [in1ayer6])

> 8

Функции могут быть составными, если только тип результата внутренней функции совпадает с типом аргумента внешней функции:

sin(foca1mean ([in1ayer1])) < 2 * B

regiongroup(rec1ass([in1ayer1], c:\data\rec1ass tab1e.txt))

majority(([in1ayer1] + [in1ayer2]), cos([in1ayerB]), zona1min([in1ayer4], [in1ayer5]))





1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 ( 66 ) 67 68 69 70 71