Appendices

Construction of expressions

Expressions on the command line and in scripts may have additional parameters to the left of the definition symbol or the assignment symbol. Furthermore, on the command line, expressions may be followed by a semicolon. ILWIS expressions are not case-sensitive.

For more information on expressions of operations, see Appendices : ILWIS expressions.

For more information on MapCalc and TabCalc expressions, see Map and Table Calculation : General syntax.

Expressions cannot be performed if the output object is currently open or is marked read only.

In the expressions and explanation below:

-

Courier

is used for obliged parts in expressions;

-

Italics

is used for�parameters with special requirements;

-

'domain'

an existing domain; the domain will be used for the output object;

-

a vertical bar | represents a choice;

-

anything in square brackets [ ] represents an optional parameter.

1. Expressions on the command line without semicolon

[$] [objtype] OUTOBJ [{domvr}] = expression

[$] [objtype] OUTOBJ [{domvr}] := expression

   

2. Expressions on the command line with semicolon

OUTOBJ [{domvr}] = expression;

OUTOBJ [{domvr}] := expression;

 

There is no check on existing output objects; an existing output object is simply overwritten.

You can specify a domain and value range for the output map in a pair of curly brackets after the output object name.

These type of expressions are executed by the script processor.

3. Expressions in scripts

OUTOBJ [{domvr}] = expression

OUTOBJ [{domvr}] := expression

 

There is no check on existing output objects; existing output objects are simply overwritten.

You can specify a domain and value range for the output map in a pair of curly brackets after the output object name.

There numerous script commands to handle object properties (set domain, set value range, set georef, break dependencies, calc, release disk space, etc.). For more information, see ILWIS script language.

Explanation of syntax:

$

to directly calculate and display the output object in a new window

objtype

to specify the output object type as:

mpl | map | pol | seg | pnt | tbl | mat

OUTOBJ[.ext]

the name of the output object with optional extension

{domvr}

to specify a domain and value range for an output map as:

{dom=domain} | {dom=domain;vr=valuerange} | {vr=valuerange; dom=domain} | {vr=valuerange}

valuerange

as min:max:prec | min:max | ::prec

=

to create a dependent output object

:=

to create an editable object

expression

expression of an operation or a MapCalc expression.

Input objects:

Domain and value range:

In MapCalc and TabCalc expressions, and in expressions for operations, you can optionally specify for the output map: an existing domain and/or the value range of and/or the precision for the output map or column by using a pair of curly brackets between the name of the ouput object and the definition or assignment symbol.

Examples:

map1{dom=domainname;vr=min:max:precision} = expression

map2{dom=domainname;vr=min:max} = expression

map3{dom=domainname;vr=::precision} = expression

map4{dom=domainname} = expression

map5{vr=min:max:precision;dom=domainname} = expression

map6{vr=min:max;dom=domainname} = expression

map7{vr=min:max:precision} = expression

map8{vr=::precision} = expression

The same applies for columns.

Note:

ILWIS uses its internal defaults to determine whether the internal calculation will be performed in integers or in reals.
In general it can be said, that:

Any user specification of the desired output domain and value range can only limit the results from the internal calculation. It is thus not possible, that when all input is in integers, to obtain output in reals by using a precision smaller than 1, for instance by using OUT{dom=Value;vr=0:10000:0.001} = ....