Copyright (C) $$year Laser-Scan Ltd Science Park, Milton Road, Cambridge, England CB4 4FY tel: +44 (0) 1223 420414 Document "IMP SPS" Category "SALES - Spec" Document Issue 1.0 Tim Hartnall 10-Sep-1986 Document Issue 1.1 Tim Hartnall 30-Sep-1986 Document Issue 1.2 Tim Hartnall 30-Oct-1986 Document Issue 1.3 Tim Hartnall 18-Nov-1986 Document Issue 1.4 Tim Hartnall, Jon Billing 17-Nov-1987 Document Issue 2.0 Tim Hartnall 14-Jan-1988 Document Issue 2.1 Sunil Gupta 06-Jun-1991 Document Issue 2.2 Steve Townrow 13-Jun-1991 Document Issue 2.3 Steve Townrow 30-Apr-1992 Document Issue 2.4 Ron Russell 4-Mar-1993 Document Issue 2.5 Jon Barber 10-Aug-1994 Document Issue 2.6 Paul Hardy 19-Aug-1994
The Laser-Scan IFF Map Processing (IMP) package consists of independent modules which together form a powerful data manipulation system within an automated mapping environment. All the modules have common command syntax which is decoded using the Command Line Interpreter as used by the VAX/VMS utilities. IMP modules all generate VMS format messages and set VMS DCL symbol $STATUS on image exit. In command files the success of a preceding IMP module may be tested using $STATUS before proceeding. All IMP modules are comprehensively documented in the IMP Reference Manual and the documentation includes an explanation of messages output by the modules together with suggested user action. All IMP modules handle IFF HI (HIstory), ZS (three dimensional strings), TS (Text Status), CB (coordinate block) and type 2 MD (Map Descriptor) entries. (For a detailed description of these and the other IFF entries see the IFF Users Guide). These entries could not be handled by the DAMP (DAta &Manipulation &Package) utilities which IMP was designed to replace. IMP is supplied with on-line help which is available via the VMS HELP utility.
Date Time Username Program Function Elapsed CPU STATUS 23-JUL-1986 12:22 CLARKE IMERGE Merge: rest 1:31:34 00:09:05 00000001
+----------------+-----------------------------------------------+-------------+ | REPLACED | DAMP MODULE FUNCTION | NEW IMP | | DAMP MODULE | | +----------------+-----------------------------------------------+-------------+ | CHKLP | Check for loops in IFF data | ICHECK | | CMPIFF | Compare two IFF files | IDIFFERENCE | | I2TEXT | ITOTEXT | | and TEXT2I | IFF/text file conversion (both ways) | IFROMTEXT | | ICE | IFF combine and extract (for edge matching) | IMERGE | | ICLIP | Map clipping | IWINDOW | | IED | IFF patch editor | IPATCH | | IFINFO | Summarise the contents of an IFF file | IINFO | | IFIX | Correct specific faults in IFF data | IFIXAREA | | IFSN | Reallocate feature serial numbers | IRENUMBER | | IFT | Tidy up an incomplete IFF file | IMEND | | IPR | Process (transform or clip) IFF data | ITRANS | | IRN | Reallocate internal sequence numbers | IRENUMBER | | LIT | Change or extract feature codes within layers | ILAYFC | | MER | Merge IFF files or extract IFF layers | IMERGE | | MIF | Mend an improperly closed IFF file | IMEND | | SCI | Scan an IFF file, giving statistics | IINFO | | SELAC | Select features on the basis of ACs or FSNs | ISELAC | | SIF | Sort on FSN, ISN or FC | ISORT | +----------------+-----------------------------------------------+-------------+
This list may be compared with the IMP package details in the following section. All major DAMP package functionality is retained in IMP, although the module which provides that functionality may have changed. In addition IMP offers many more functions than the DAMP package.
The facilities offered by IMP are described by module in alphabetical order of module.
* ICHECK (vector data geometry checking)
DAMP module equivalent: CHKLP
ICHECK is an IFF geometry checking utility. It scans the coordinates of an IFF file and reports on the following potential errors within features or between features:
Specific features may be selected for checking on the basis of IFF layer and/or feature code. Text output may be directed to file, printer or terminal. An option is provided to enable generation of an IFF file containing error markers for error overlay plotting. An option to output a LITES2 command file is provided to enable automated assistance in editing.
* ICUT (IFF feature manipulator)
DAMP module equivalent: none
ICUT is a utility for converting selected input features from an existing IFF file. Conversion is attained by imposing constraints on the selected features. The resulting features (converted and not converted) are written to a new output IFF file.
Features are selected on the basis of:
Constraints that can be set on the output features are:
In addition, the following attributes of the input features can be attached to the output features:
* IDIFFERENCE ( IFF file comparator)
DAMP module equivalent: CMPIFF
IDIFFERENCE is a program for comparing two IFF files. The features inside them need not be sorted in order of feature serial number.
The program detects:
Output may be directed to file, printer or terminal.
* IFILTER (IFF string filtering and/or smoothing)
DAMP module equivalent: None, IFILTER is a new IMP utility.
IFILTER is designed to smooth or filter, or smooth and then filter IFF strings using one of the following algorithms:
Smoothing and filtering takes place by default for all features in the file. Alternatively a restricted class of features may be selected on the basis of IFF layer or feature code.
* IFIXAREA (area feature check and repair)
DAMP module equivalent: DAMP IFIX
IFIXAREA is designed to read an IFF file and test for errors relating to area features. The errors to be checked for are specified on the IFIXAREA command line, and may be any combination of the following:
Checking takes place by default for all features in the file. Alternatively a restricted class of features may be selected on the basis of IFF layer or feature code for checking.
Error log output may be directed to file, printer or terminal.
* IFROMTEXT (Refer to ITOTEXT)
* IINFO (IFF file scan and summary)
DAMP module equivalent: IFINFO and SCI
IINFO gives brief general information about the specified IFF file. The default information given is as follows:
Output may be directed to terminal or printer.
* ILAYFC (IFF feature code reallocation - by whole IFF layer)
DAMP module equivalent: LIT
ILAYFC enables the user to set all of the feature codes in one or more layers in an IFF file to specified values.
Optionally ILAYFC processes in-situ on the input file.
* IMEND (IFF file recovery)
DAMP module equivalent: MIF and IFT
IMEND enables recovery of IFF files which have been improperly closed as a result of system failure or operator error. Options exists to update the RA (RAnge) entry after mending a file or to suppress the addition of EF,EO,EM and EJ entries which terminate an IFF file.
* IMERGE (IFF file joining, layer selection or file splitting)
DAMP module equivalent: MER
IMERGE is an IFF file merge utility. It is used in four circumstances:
* IPATCH (IFF patch editor)
DAMP module equivalent: IED
IPATCH is the IFF file patch editor. It allows the user to inspect, edit or delete the various entries in the file. The file is not copied, and changes made in write mode are performed in-situ. As IFF files have serial structure it is thus not possible to add additional IFF entries nor re-write an entry of greater length than the original.
The default mode of operation is to open the IFF file for reading only.
* IRECODE (IFF layer, feature code and AC reallocation)
DAMP module equivalent: None, IRECODE is a new IMP utility.
IRECODE enables the user to change selected Layers, Feature Codes or AC type numbers in an IFF file to specified new values.
IRECODE offers the option of recoding specified IFF input file attributes in-situ.
IRECODE allows the translation of alphanumeric feature codes held in AC entries into numeric feature codes.
* IRENUMBER (IFF feature serial number reallocator)
DAMP module equivalent: DAMP IFSN
IRENUMBER takes an IFF file and creates a new version of the file in which the Feature Serial Numbers (FSNs) are reallocated in monotonically increasing order. IRENUMBER is intended mainly for recovery from error situations which have resulted in multiply allocated FSNs within an IFF file.
* IREPORT (IFF contents presence/absence reporting by specified entity)
DAMP module equivalent: None, IREPORT is a new IMP utility.
IREPORT gives information about every occurrence of the selected IFF entries. Alternatively the absence of the specified entry may be detected.
An option to output a LITES2 command file is provided.
* ISELAC (IFF feature selection on the basis of AC contents)
DAMP module equivalent: SELAC
ISELAC reads an IFF file and writes selected features to a new IFF file. Feature selection is based on AC (Ancillary Code) type or on one or more of the attributes associated with an AC entry. ISELAC utilises a series of dynamic command tables created from a user-defined 'skeleton' file, to offer greater AC selection flexibility.
ISELAC offers the following features:
* ISELECT (IFF feature selection by user specified IFF entry)
DAMP module equivalent: None, ISELECT is a completely new IMP utility.
ISELECT creates a new IFF file containing features selected from an existing IFF file on the basis of attributes specified by qualifiers on the command line. All specified criteria have to match for a feature to be copied.
Selection may be based on:
* ISORT (IFF file sorting)
DAMP module equivalent: SIF, IRN
ISORT is an IFF file sort program. It sorts the features in an IFF file into ascending Feature Serial Number (FSN) order, ascending Internal Serial Number (ISN) or ascending Feature Code (FC).
ISORT features are:
* ISTART (IFF template file generation)
DAMP module equivalent: None, ISTART is a new IMP utility.
ISTART is designed to create an IFF file as a pre-digitising template. The file is then filled with data captured during the digitising process. ISTART enables the user to specify the control points, map scale and origin offset information which are written to the template CP (Control Point) and MD (Map Descriptor) entries. The values for the control points may either be typed at the users terminal, or they may be coordinates captured from a manual digitising table. The LASERAID digitiser may then be started up in 'OLD' mode reducing the time spent by the user in poor lighting conditions typing in control point values.
ISTART creates customer specific MH (Map Header) entries if the appropriate customer command qualifiers are specified. In Ordnance Survey mode ISTART prompts for header information and then generates a grid in layer 0. Laser-Scan MUART (Multi-UART) and TABLE_MONITOR driven digitising tables may be addressed.
The default mode of operation is to prompt the user at the terminal for control point and origin offset values.
The first IFF layer may be specified.
Either registration ticks or crosses may be placed in layer 0 at the location of the control point values.
* ITOTEXT and IFROMTEXT (IFF to text and text to IFF conversion)
DAMP module equivalent: DAMP I2TEXT and TEXT2I
ITOTEXT and IFROMTEXT are two programs which have been designed for the conversion of an IFF file into text, and vice versa. It is envisaged that ITOTEXT will be used for the conversion of data into text form for transfer to external customers, and IFROMTEXT for creating template IFF files, standard grids, etc. The two programs can also be used to enable text editing of IFF files. This is done by converting an IFF file into text form using ITOTEXT, editing the text file, and creating a new IFF file from the edited text file using IFROMTEXT.
Output may be directed to file, printer or terminal.
* ITRANS (IFF coordinate transformation)
DAMP module equivalent: Projection computation and transformation functions of IPR
ITRANS is a powerful general map projection program.
It allows transformation between spheroidal data (latitude and longitude) and specified map projections and will also transform data from one map projection directly into another.
Plane transformations ("empirical transformations") can also be carried out.
ITRANS is primarily intended for operation on data held in IFF files, but it can also be used to transform individual points.
ITRANS transforms coordinates from one coordinate system into another. It has no knowledge of any implied connection between these coordinates. Users must be aware, particularly when using data sets covering large portions of the earth's surface, that points that are close together in one system may be far apart on another and this may give unexpected results when these points are adjacent vertices in an IFF feature.
The MD (map descriptor) entry in the IFF file carries information about the projection that the coordinate data is currently held in. Each run of ITRANS will ask the operator for details of the required projection and the data in the file will be transformed into this projection in a new IFF file with a corresponding MD entry.
ITRANS can be used to edit an existing version 2 MD entry (or insert one, if none exists) without transforming any of the coordinate data.
The version 2 map descriptor contains the following information:-
This is a REAL*8 (double precision) number which when multiplied by map (or sheet) units gives IFF units - e_.g_. 50000_.0 for a 1:50000 map.
It is used to relate IFF units to e_.g_. symbol and text sizes on the map sheet and also as a general indication of the accuracy of the digital data.
All geographical data is ultimately related to a particular spheroid.
The spheroid is the geometrical model of the earth that was used when the original survey was carried out. It is possible, using ITRANS, to convert data from one spheroid to another, but the relationships between the particular geodetic datums that the spheroids are part of must be known.
The spheroids that ITRANS knows about are as follows:-
Clarke 1866 Clarke 1880 Bessel New International 1967 International 1924 (Hayford 1909) World Geodetic System 72 (WGS 72) Everest World Geodetic System 66 (WGS 66) Geodetic Reference System 1980 (GRS 1980) Airy Modified Everest Modified Airy Walbeck Southeast Asia Australian National Krassovsky Hough Mercury 1960 Modified Mercury 1968 Sphere of radius 6370997 M Sphere of radius 6371229.3M Clarke 1880 (IGN) World Geodetic System 84 (WGS 84) User specified spheroid
The projections that ITRANS can work with (and their codes) are:
0 Unset 1 Universal Transverse Mercator 2 State Plane Coordinates 3 Albers Conical Equal Area 4 Lambert Conformal Conic 5 Mercator 6 Polar Stereographic 7 Polyconic 8 Equidistant Conic 9 Transverse Mercator 10* Stereographic 11* Lambert Azimuthal Equal Area 12* Azimuthal Equidistant 13* Gnomonic 14* Orthographic 15* General Vertical Near-Side Perspective 16* Sinusoidal 17* Equirectangular 18* Miller Cylindrical 19* Van der Grinten 20 Oblique Mercator (Hotine) 21* Oblique Mercator (Spherical) 22 Stereographic (UKSL formulae) 23 Cassini 24 Krovak 25 Bonne 26* Mollweide 27* Hammer-Aitoff 28* Winkel III 100 Geographic (ie Latitude and Longitude ) 101 UK national grid (a special case of 9)
2) Data can be held in spheroidal, or spherical, coordinates (i_.e_. Latitude and Longitude) by specifying projection code 100.
3) When using projection code 100, it should be noted that the coordinates are stored in the IFF file in the order Longitude, Latitude as this corresponds most closely to X and Y on a cartesian system.
4) In all LAMPS software a right handed coordinate system is assumed. ITRANS only produces right handed systems even when particular projections are traditionally used to produce left handed systems.
The projections listed above specify the formulae to be used in the projection, but in any particular case more data will be required. There is provision in the map descriptor to store up to 15 additional pieces on data as REAL*8 (double precision) numbers, such as projection zone, origin etc.
The possible units in IFF files, and their codes are:
* IWINDOW (clips IFF map data to a rectangular boundary)
DAMP module equivalent: DAMP ICLIP
The clipping rectangle can be given explicitly using /NORTH, /SOUTH, /EAST and /WEST qualifiers on the command line. Alternatively it can be extracted from the map header or control point entries.
IMP modules run under OpenVMS Version 5.5-2, or OpenVMS AXP V1.5 (or higher version, assuming continued upwards compatability by DEC) concurrently with other interactive and batch processes.
Laser-Scan provide all relevant interface libraries. Laser-Scan's LITES2 interactive digitising and editing software running on the same host computer is recommended for digitising vector input data. LASERAID automated digitising is recommended for large numbers of input documents.
It is recommended that the reader becomes familiar with the LAMPS Environment Guide which outlines in greater detail the hardware and software environment required by the LAMPS package as a whole (of which IMP is but a part).
The minimum hardware and software requirements for any future version of this product may be different from the minimum hardware and software requirements for the current version.
IMP is a fully supported Laser-Scan standard software product.
In addition to the standard IMP package Laser-Scan provide an optional related package, STRUCTURE.
The main module in the STRUCTURE package is ILINK, an IFF geometry tidying and link-node structuring utility offering the following features:
The structured data generated by ILINK permits network processing operations, such as polygon generation, route planning, map colouring and structured data-base compilation.
For more information on ILINK please see the separate STRUCTURE Software Product Specification (SPS).