DTICHECK - CHECKING A DTI FILE FOR SUSPECT DATA POINTS.


--------------------------------------------------------------------------------
MODULE DTICHECK

--------------------------------------------------------------------------------
REPLACES None. DTICHECK is a new TVES utility.

--------------------------------------------------------------------------------

FUNCTION

--------------------------------------------------------------------------------

FORMAT

--------------------------------------------------------------------------------

COMMAND QUALIFIERS

--------------------------------------------------------------------------------

DTICHECK COMMAND DEFAULTS.

--------------------------------------------------------------------------------

DESCRIPTION


   %MESSAGE Null post value detected at X = 7650.0  Y = 4560.0
   %LET DTICHECK_X_POS = 7650.0 - '$MDOFFSET1'
   %LET DTICHECK_Y_POS = 4560.0 - '$MDOFFSET2'
   %POSITION 'DTICHECK_X_POS' 'DTICHECK_Y_POS'
   %TEST $CURSINWIN
   %ELSE %ZOOM 1
   %PING
   %RESPOND
   %ABANDON		
   %ABANDON		


   %MESSAGE 350 Null post values detected between X = 7650.0  Y = 4560.0 and
   X = 7650.0 Y = 5000.0
   %LET DTICHECK_X_POS = 7650.0 - '$MDOFFSET1'
   %LET DTICHECK_Y_POS = 4560.0 - '$MDOFFSET2'
   %POSITION 'DTICHECK_X_POS' 'DTICHECK_Y_POS'
   %TEST $CURSINWIN
   %ELSE %ZOOM 1
   %PING
   %RESPOND
   %ABANDON		
   %ABANDON		

   MESSAGE Null post value detected at X = 765  Y = 456
   MOVE 765    456
   PING
   RESPOND

   MESSAGE 350 Null post values detected between X = 765  Y = 456 and X = 765 
   Y = 500
   MOVE 765    456
   PING
   RESPOND


FILEIN TESTDATA           - input file is LSL$DTI:TESTDATA.DTI
WINDOW 100 100 200 200    - area of interest in input file is defined
                            by SW 100x 100y and NE 200x 200y
SLOPE 8 		  - sets threshold inter-post Z difference
ENABLE SLOPE              - report all posts which exceed SLOPE
                            tolerance Z difference 
ENABLE NULL               - report all null posts 
IFF CHECK_OVERLAY         - output error features to LSL$IF:CHECK_OVERLAY.IFF
SET LAYER 10		  - put error features into layer 10 of the IFF file
SET SLOPE_FC 5            - give IFF slope error features, feature code 5
SET NULL_FC 2             - give IFF null post features, feature code 2
GO                        - start to process


--------------------------------------------------------------------------------

DTICHECK COMMANDS

_@ COMMAND

--------------------------------------------------------------------------------
_@

--------------------------------------------------------------------------------
FORMAT: _@file-spec<CR>

--------------------------------------------------------------------------------
Command parameters:

--------------------------------------------------------------------------------
DESCRIPTION:

DTICHECK offers the facility of command input from an indirect command file. The '@' character preceding a file-spec will cause DTICHECK to open and read commands from the specified file until:

Nested command files are not supported (i_.e_. a command file containing an '@' command), although sequential '@' commands are supported when read from SYS$COMMAND.

As an aid to batch log interpretation DTICHECK will echo all commands read from an indirect command file.

--------------------------------------------------------------------------------
Messages:

The following messages are specific to the _@ command:

*** WARNING *** Indirect file error - returning to terminal input

*** ERROR *** Can't open indirect command file 'file-spec'

--------------------------------------------------------------------------------
Examples:


$ DTICHECK<CR>
TVES module DTICHECK of 13:30:39 18-OCT-87
DTICHECK> @PRESETS<CR>
DTICHECK> ENABLE DIAGNOSTICS
DTICHECK> ENABLE SLOPE
DTICHECK> FILEIN OEEPE
DTICHECK> UNITS METRES
DTICHECK> WINDOW 1 1 101 51
DTICHECK> LITES2 DTICHECK
DTICHECK> GO
DTICHECK> RETURN
DTICHECK>

_! COMMAND

--------------------------------------------------------------------------------
_!

--------------------------------------------------------------------------------
FORMAT: _! [comment text]

--------------------------------------------------------------------------------
Command parameters:

--------------------------------------------------------------------------------
DESCRIPTION:

An exclamation mark is the standard DTM package comment delimiter. All text (and numbers) which lie to the right of a '!' character are excluded from command interpretation. Comments are useful for annotating command procedures used in batch processing etc_.

--------------------------------------------------------------------------------
Messages: None.

--------------------------------------------------------------------------------
Examples:


DTICHECK> _! a comment for the sake of it<CR>
DTICHECK> WINDOW 0.0 0.0 900.0 900.0<CR>
DTICHECK>

DISABLE ABSOLUTE COMMAND

--------------------------------------------------------------------------------
DISABLE ABSOLUTE

--------------------------------------------------------------------------------
FORMAT: DISABLE ABSOLUTE

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE ABSOLUTE cancels a previous ENABLE ABSOLUTE command. If DISABLE ABSOLUTE is given, then coordinate values required by the WINDOW command supplied in metre or projection units, must be specified as an offset from the SW corner of the matrix.
By default values should be specified as absolute coordinates.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the DISABLE command:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> DISABLE ABSOLUTE<CR>
DTICHECK>

DISABLE DIAGNOSTICS COMMAND

--------------------------------------------------------------------------------
DISABLE DIAGNOSTICS

--------------------------------------------------------------------------------
FORMAT: DISABLE DIAGNOSTICS

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE DIAGNOSTICS allows the user to disable a previous ENABLE DIAGNOSTICS command.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the DISABLE command:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> DISABLE DIAGNOSTICS<CR>
DTICHECK>

DISABLE MINUS COMMAND

--------------------------------------------------------------------------------
DISABLE MINUS

--------------------------------------------------------------------------------
FORMAT: DISABLE MINUS

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE MINUS allows the user to disable a previous ENABLE MINUS command.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the DISABLE command:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> DISABLE MINUS<CR>
DTICHECK>

DISABLE NULL COMMAND

--------------------------------------------------------------------------------
DISABLE NULL

--------------------------------------------------------------------------------
FORMAT: DISABLE NULL

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE NULL allows the user to disable a previous ENABLE NULL command.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the DISABLE command:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> DISABLE NULL<CR>
DTICHECK>

DISABLE PME COMMAND

--------------------------------------------------------------------------------
DISABLE PME

--------------------------------------------------------------------------------
FORMAT: DISABLE PME

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE PME allows the user to disable a previous ENABLE PME command.

--------------------------------------------------------------------------------
Messages:

The following error message are specific to the DISABLE and DISABLE PME commands:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

*** WARNING *** You are not using PME !

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE PME<CR>
DTICHECK> DISABLE PME<CR>
DTICHECK>

DISABLE SLOPE COMMAND

--------------------------------------------------------------------------------
DISABLE SLOPE

--------------------------------------------------------------------------------
FORMAT: DISABLE SLOPE

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE SLOPE allows the user to disable a previous ENABLE SLOPE command.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the DISABLE command:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> DISABLE SLOPE<CR>
DTICHECK>

DISABLE ZERO COMMAND

--------------------------------------------------------------------------------
DISABLE ZERO

--------------------------------------------------------------------------------
FORMAT: DISABLE ZERO

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

DISABLE ZERO allows the user to disable a previous ENABLE ZERO command.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the DISABLE command:


*** ERROR *** Specifying command DISABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> DISABLE ZERO<CR>
DTICHECK>

ENABLE ABSOLUTE COMMAND

--------------------------------------------------------------------------------
ENABLE ABSOLUTE

--------------------------------------------------------------------------------
FORMAT: ENABLE ABSOLUTE

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

If ENABLE ABSOLUTE is given, then coordinate values required by the WINDOW, command, supplied in metre or projection units, must be specified as absolute (rather than relative) coordinate values.

For example if the projection indicates U.K. National Grid, then the WINDOW values may be specified as 6 figure National Grid coordinates.
By default window values should be specified as absolute coordinates.

ENABLE ABSOLUTE also controls whether coordinate information output with the SHOW FILES command, and during a DTICHECK run if the ENABLE DIAGNOSTICS command has been specified, is output in absolute or relative coordinates.

This option can be disabled using the DISABLE ABSOLUTE command.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the ENABLE command:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE ABSOLUTE<CR>
DTICHECK>

ENABLE DIAGNOSTICS COMMAND

--------------------------------------------------------------------------------
ENABLE DIAGNOSTICS

--------------------------------------------------------------------------------
FORMAT: ENABLE DIAGNOSTICS

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

ENABLE DIAGNOSTICS allows the user to enable diagnostic printout.

If no output file option is selected, all checking reports are directed to SYS$OUTPUT. If an output file is selected checking reports will only be directed to SYS$OUTPUT if the ENABLE DIAGNOSTICS is given.

Because it is usually used in a batch processing environment to generate a LITES2 or ROVER command file, by default DTICHECK produces minimal diagnostic printout. If however, the user wishes to receive indications of processing progress and of the effect of windowing on data input, diagnostic printout may be selected with the ENABLE DIAGNOSTICS command.

If no output file option is selected, all checking reports are directed to SYS$OUTPUT. If an output file is selected checking reports will only be directed to SYS$OUTPUT if the ENABLE DIAGNOSTICS is given.

On a heavily loaded computer it may be reassuring to ENABLE DIAGNOSTICS to indicate progress through the DTI file.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the ENABLE command:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE DIAGNOSTICS<CR>
DTICHECK>

ENABLE MINUS COMMAND

--------------------------------------------------------------------------------
_ENABLE MINUS

--------------------------------------------------------------------------------
FORMAT: ENABLE MINUS

--------------------------------------------------------------------------------
Command parameters: None

--------------------------------------------------------------------------------
DESCRIPTION:

Perform the check for negative post values on the file specified with the FILEIN command.

The ENABLE MINUS command causes DTICHECK to report on the occurrence of all posts within the DTI file which have a negative Z value.

See the main DESCRIPTION section for a description of the report generated.

Posts with negative null values are NOT reported. Use the CHECK NULL command to report on the occurrence of negative null posts.

Where errors are reported for adjacent posts within the DTI file, a run length encoded message will be generated.

By default no check options are active and the user is warned on attempting to issue a GO command if no check options are active.

The ENABLE MINUS command may be specified singly or in combination with any of the other check options.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the ENABLE command:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE MINUS<CR>
DTICHECK>

ENABLE NULL COMMAND

--------------------------------------------------------------------------------
_ENABLE NULL

--------------------------------------------------------------------------------
FORMAT: ENABLE NULL

--------------------------------------------------------------------------------
Command parameters: None

--------------------------------------------------------------------------------
DESCRIPTION:

The ENABLE NULL command causes DTICHECK to report on the occurrence of all posts within the DTI file which have the null Z value.

See the main DESCRIPTION section for a description of the report generated.

Unless the user specifies a null value with the NULL command, by default the following values are used: -

0 if BYTE type.
-32767 if WORD type.
80000000 Hex if LONG type.
-1.0E-38 if REAL type.

Where errors are reported for adjacent posts within the DTI file, a run length encoded message will be generated.

By default no check options are active and the user is warned on attempting to issue a GO command if no check options are active.

The ENABLE NULL command may be specified singly or in combination with any of the other check options.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the ENABLE command:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE NULL<CR>
DTICHECK>

ENABLE PME COMMAND

--------------------------------------------------------------------------------
ENABLE PME

--------------------------------------------------------------------------------
FORMAT: ENABLE PME

--------------------------------------------------------------------------------
Command parameters: None.

--------------------------------------------------------------------------------
DESCRIPTION:

The ENABLE PME and DISABLE PME commands are reserved for Laser-Scan use. PME is a code optimisation tool and should be invoked by LSL software personnel only.

ENABLE PME causes the PME_INIT routine to be invoked.

--------------------------------------------------------------------------------
Message:

The following messages are specific to the ENABLE and ENABLE PME commands:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

*** WARNING *** You are already using PME!

--------------------------------------------------------------------------------
Examples:


$ DTICHECK<CR>
TVES module DTICHECK of 13:30:39 18-JAN-89
DTICHECK> ENABLE PME<CR>
DTICHECK>

ENABLE SLOPE COMMAND

--------------------------------------------------------------------------------
_ENABLE SLOPE

--------------------------------------------------------------------------------
FORMAT: ENABLE SLOPE

--------------------------------------------------------------------------------
Command parameters: None

--------------------------------------------------------------------------------
DESCRIPTION:

The ENABLE SLOPE command causes DTICHECK to report where a critical slope defined by a user supplied threshold Z difference is exceeded.

See the main DESCRIPTION section for a description of the report generated.

Posts with null values are NOT reported.

Where errors are reported for adjacent posts within the DTI file, a run length encoded message will be generated.

By default no check options are active and the user is warned on attempting to issue a GO command if no check options are active.

The ENABLE SLOPE command may be specified singly or in combination with any of the other check options.

If ENABLE SLOPE is specified the SLOPE command should also be specified before the GO command is used.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the ENABLE command:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE SLOPE<CR>
DTICHECK>

ENABLE ZERO COMMAND

--------------------------------------------------------------------------------
_ENABLE ZERO

--------------------------------------------------------------------------------
FORMAT: ENABLE ZERO

--------------------------------------------------------------------------------
Command parameters: None

--------------------------------------------------------------------------------
DESCRIPTION:

The ENABLE ZERO command causes DTICHECK to report on the occurrence of all posts within the DTI file which have a zero Z value.

See the main DESCRIPTION section for a description of the report generated.

Care must be exercised when processing BYTE type DTI files which, by default, use zero as the null post value.

Where errors are reported for adjacent posts within the DTI file, a run length encoded message will be generated.

By default no check options are active and the user is warned on attempting to issue a GO command if no check options are active.

The ENABLE ZERO command may be specified singly or in combination with any of the other check options.

--------------------------------------------------------------------------------
Messages:

The following error message is specific to the ENABLE command:


*** ERROR *** Specifying command ENABLE
Available DISABLE command qualifiers are: 
ABSOLUTE    DIAGNOSTICS     MINUS      NULL       PME  
SLOPE       ZERO

--------------------------------------------------------------------------------
Examples:


DTICHECK> ENABLE ZERO<CR>
DTICHECK>

FILEIN COMMAND

--------------------------------------------------------------------------------
FILEIN

--------------------------------------------------------------------------------
FORMAT: FILEIN file-spec

--------------------------------------------------------------------------------
COMMAND PARAMETERS:

--------------------------------------------------------------------------------
DESCRIPTION:

The FILEIN command causes the specified file to be opened and used as an input file to DTICHECK. A FILEIN command must be issued before the WINDOW or GO commands will be accepted.

By default the window is the total extent of the input file.

--------------------------------------------------------------------------------
Messages:

The following messages are specific to the FILEIN command:

*** WARNING *** You must specify a file-spec argument to the FILEIN command
*** ERROR *** Unable to interpret input file-spec

--------------------------------------------------------------------------------
Examples:

DTICHECK> FILEIN REAL<CR>
DTI file LSL$DTI:REAL.DTI;0 opened for read
File    :  LSL$DTI:REAL.DTI;0
Header  :  LSLA  Data:  REAL
Units are Metres
Matrix Coverage   SW:       0.00       0.00    NE:      49.00      49.00
Matrix Interval    E:       1.00                N:       1.00
Value Range         :     -5.00 to  326421.00
DTICHECK>

GO COMMAND

--------------------------------------------------------------------------------
_GO

--------------------------------------------------------------------------------
FORMAT: GO

--------------------------------------------------------------------------------
Command parameters: None

--------------------------------------------------------------------------------
DESCRIPTION:

Perform the selected checks on the file specified with the FILEIN command.

Before starting to process, checks will be carried out to ensure that the input file has been opened and that at least one check option has been selected.

--------------------------------------------------------------------------------
Messages:

*** ERROR *** No CHECKS have been ENABLED
*** ERROR *** DTI file not yet specified DTI file

In addition to these there are the diagnostic printout messages which will be given if diagnostics are enabled.These consist of indications of the progress of checking through the input file.

--------------------------------------------------------------------------------
Examples:


DTICHECK> GO<CR>
DTICHECK>

HELP COMMAND

--------------------------------------------------------------------------------
HELP

--------------------------------------------------------------------------------
FORMAT: HELP subject

--------------------------------------------------------------------------------
Command parameters:

--------------------------------------------------------------------------------
Description:

The HELP command looks the rest of the line up in the TVES HELP library. This library contains a brief summary of the operation of each command.

The information is looked up in the DTICHECK section of the TVES help library, LSL$HELP:TVES.HLB.

--------------------------------------------------------------------------------
Messages:

Where required, warning messages are output via the VMS LBR$OUTPUT_HELP utility.

--------------------------------------------------------------------------------
Examples:


DTICHECK> HELP ENABLE PME<CR>

DTICHECK

ENABLE

PME


DTICHECK>

IFF COMMAND

--------------------------------------------------------------------------------
IFF

--------------------------------------------------------------------------------
FORMAT: IFF file-spec

--------------------------------------------------------------------------------
COMMAND PARAMETERS:

--------------------------------------------------------------------------------
DESCRIPTION:

The IFF command enables specification of the IFF file which is to receive features indicating the positions of suspected data errors.

The layer and feature code allocations used in the IFF file may be specified by the user at run time using the SET command. Alternatively, the DTICHECK default layer and feature code allocations may be used. These are:


     Layer .............................. 1
     Slope feature code .......... 1
     Minus feature code .......... 2
     Null feature code ........... 3
     Zero feature code ........... 4

The IFF command may be specified in conjunction with the LITES2 and ROVER commands. If none of the IFF, LITES2 and ROVER commands is specified, message output will be to SYS$OUTPUT.

The IFF command must be issued before the GO command.

--------------------------------------------------------------------------------
Messages:

The following messages are specific to the IFF command:


*** WARNING *** You must specify a file-spec argument to the IFF command
*** ERROR *** unable to interpret output file-spec

--------------------------------------------------------------------------------
Examples:


DTICHECK> IFF DUA3:[DEMONSTRATION]IDAHO.IFF<CR>
DTICHECK>

LITES2 COMMAND

--------------------------------------------------------------------------------
LITES2

--------------------------------------------------------------------------------
FORMAT: LITES2 file-spec

--------------------------------------------------------------------------------
COMMAND PARAMETERS:

--------------------------------------------------------------------------------
DESCRIPTION:

The LITES2 command enables specification of a LITES2 command file to receive LITES2 commands indicating the positions of suspected data errors.

See the main DESCRIPTION section for a description of the LITES2 command used.

The LITES2 command may be specified in conjunction with the IFF and ROVER commands. If none of the IFF, LITES2 and ROVER commands is specified, message output will be to SYS$OUTPUT.

The LITES2 command must be issued before the GO command.

--------------------------------------------------------------------------------
Messages:

The following messages are specific to the LITES2 command:


*** WARNING *** You must specify a file-spec argument to the LITES2 command
*** ERROR *** unable to interpret output file-spec

--------------------------------------------------------------------------------
Examples:


DTICHECK> LITES2 DUA3:[DEMONSTRATION]IDAHO.LCM<CR>
DTICHECK>

NULL COMMAND

--------------------------------------------------------------------------------
NULL

--------------------------------------------------------------------------------
FORMAT: NULL null_value

--------------------------------------------------------------------------------
Command parameters: