This is a description of a data acquisition scheme "WINPUT" for digitally recorded terrain height information, as recommended by the Institute of Photogrammetry of the Technical University of Vienna.
Each record contains a point number (=code) and coordinates x, y, z corresponding to Easting, Northing, Elevation.
The order of code, x, y, and z within the recording can be chosen at convenience. By default, this order is assumed to be: code, x, y, z.
Data format has to remain constant for a set of data (=model). The following characters are permissible:
Digits: | 1 2 3 4 5 6 7 8 9 0 |
Sign: | + - |
Decimal point: | . |
Of these characters, integer (e.g. 123 or -3456) or real numbers (e.g. 123. or -3.456) may be composed.
Point numbers are, positive integer numbers (e.g.12345). If point numbers are recorded as real numbers (which is allowed), they will be truncated to their resp. integer values. Point numbers may contain 3 to 8 digits.
Coordinates may be recorded as integer or real numbers.
WINPUT allows reals to contain up to 14 digits; coordinate differences, however, should not exceed values of max. 7 significant digits. (Otherwise accuracy may be lost depending on the computer applied). Example: (maximum x - minimum x) = 123456.789 yields an accuracy 0.05 only.
It is a basic concept with WINPUT, to store all information concerning the recording itself together with the terrain point recordings. For this purpose, "control header recordings", and "terrain point recordings" are rused. Certain groups of these recordings are delimited by "delimiter recordings".
Coordinates in delimiting records are disregarded.
Examples:
Beginning of a model: | 99...91 |
Starting group with control points: | 99...94 |
Starting terrain point recordings: | 99...98 |
End of model: | 99...99 |
The delimiter recording 99...91 and the model number has always to be at the beginning of a model.
The order of control header groups is arbitrary.
Terrain point recordings contain the data acquired in profiles, along contour lines, points distributed at random, break lines etc., as coded in the first two digits (left justified) of the point number. These codes are standards in WINPUT, e.g.
10000000 X Y Z profiles in y-direction (WINPUT code 10) 51000020 X Y Z closed break line No. 20 (WINPUT code 51)
Point numbers within terrain point recordings must have the same number of digits as within the control header recordings.
Terrain point recordings with a 0 point number are disregarded.
99999991 ...... ...... ...... model beginning MODNUM ...... ...... ...... 99999992 ...... ...... ...... units and scales MXY ...... ...... ...... UXY ...... ...... ...... UZ ...... ...... ...... 99999993 ...... ...... ...... model extensions CODE X Y Z . . . CODE X Y Z 99999994 ...... ...... ...... control points (coordinates in the model system) CNR X Y Z . . . CNR X Y Z 99999995 ...... ...... ...... point density characteristics of terrain point recordings OFFSET ...... ...... ...... DENSITY ...... ...... ...... 99999998 ...... ...... ...... terrain point recordings CC...LNR X Y Z . . . CC...LNR X Y Z 99999999 ...... ...... ...... model end 99999991 ...... ...... ...... next model beginning ... 99999999 ...... ...... ...... model end
99999991 ...... ...... ...... delimiting recording: model beginning MODNUM ...... ...... ...... model number
Recording this group of the control header record is compulsory in WINPUT: each model must start with it.
99999992 ...... ...... ...... MXY ...... ...... ...... model scale \ for the XY-plane UXY ...... ...... ...... units / MH ...... ...... ...... model scale \ for the heights UH ...... ...... ...... units /
Model scale and units can be recorded separately for the XY-plane and for elevations.
Scale: the point number field of the corresponding recording contains right justified the scale denominator (e.g. 10.000 for 1:10.000 or 1 for 1:1 in case of a non-integer denominator(e.g.1:6666.66...) it suffices to assure that the ratio (scaleinXY):scaleinH) remains undistorted. Example: MXY= 10 000, MH=6666.66...can be exactly processed with MXY=3, and MH=2).
Units: of the recorded coordinates, defined by one right justified digit in the point numer field:
0 meters 1 decimeters 2 centimeters 3 millimeters 4 tenths of millimeters (mm/10) 5 hundredths of millimeters (mm/100)
Note that the above numbers correspond to the number of decimals if coordinates are expressed in meters.
Example: Scale in the xy-plane 1: 20 000 Recording hundredths of a millimeter (mm/100) in xy-coordinates and decimeters (m/10) in heights:
99999992 ...... ...... ...... 20000 ...... ...... ...... 5 ...... ...... ...... 1 ...... ...... ...... 1 ...... ...... ......
If the recordings for heights (MH and UH) are missing in this control header group, the programs will take MXY resp. UXY as such.
Example: both xy-coordinates and heights recorded in the ground coordinate system, with the units being centimeters (m/100)
99999992 ...... ...... ...... 1 ...... ...... ...... 2 ...... ...... ......
The control header group 99...92 plays a crucial role in the following cases:
99999993 ...... ...... ...... CODE X Y Z \ . \ . \ limiting points . / / CODE X Y Z /
The CODE in the point number field defines the logical position of the point within the model: (see table on next page). These points define the extension of the digitized area. It is not the extension of orthophoto nor of DTM.
========================================================= 1-digit CODE | Explanation | Scheme right justified | | ========================================================= 1 | left lower corner point | 2 _______ 2 | left upper corner point | | | 3 3 | right side limiting or | | | | corner point | 1 |_______| --------------------------------------------------------- 9 | point of a limiting | | polygon | =========================================================
Example:
2 *------------ 99999993 ...... ...... ...... | | 1 100000 100000 100000 | * 3 2 100000 125000 100000 | | 3 115000 120000 100000 | | 1 *------------
or
------------* 3 99999993 ...... ...... ...... | | 1 100000 100000 100000 | | 3 115000 125000 100000 | | 1 *------------
necessary if an absolute orientation is to be performed - now or in the future, for any, maybe unforseen, purpose.
99999994 ...... ...... ...... CNR X Y Z . . . CNR X Y Z
The delimiting recording 99...94 marks the beginning of the group with the model coordinates of control points. There may be recorded a maximum of 50 control points per model. Control points must not have numbers greater than 999...0 (Collision with delimiting recordings).
99999995 ...... ...... ...... OFFSET ...... ...... ...... DENSITY ...... ...... ......
The specifications OFFSET and DENSITY in the point number field describe data density and have different meanings depending upon the sort of data acquisition techniques applied:
main part of terrain point recordings belongs to: | |||
profiles | contour lines | points distributed at random | |
OFFSET | distance between profiles | height step between contour lines | average point destance |
DENSITY | (average) distance between the points of a profile | (average) distance between the points a long contour lines | may be omitted or will be handled as a dummy |
OFFSET and DENSITY have to be expressed in the units specified past the delimiter recording 99...2. In this, scale in z and height units apply to height step definition for contour lines. Scale and units for the xy coordinates apply in all other cases.
Example: Profiles recorded in scale 1:20 000, units mm/100, profile offset (in model) 2mm, point density within the profiles 1 mm:
99999992 ...... ...... ...... 20000 ...... ...... ...... 5 ...... ...... ...... . . . 99999995 ...... ...... ...... 200 ...... ...... ...... = 200 mm/100 100 ...... ...... ...... = 100 mm/100
Example: Contour lines recorded in a model with xy-scale 1:20 000, xy-units mm/100, heights recorded in the ground control system (1:1), units of heights m/10 (decimeters), height step between contours 10 m, point density a long the contours 2 mm:
99999992 ...... ...... ...... 20000 ...... ...... ...... 5 ...... ...... ...... 1 ...... ...... ...... 1 ...... ...... ...... . . . 99999995 ...... ...... ...... 100 ...... ...... ...... = 100 dm 200 ...... ...... ...... = 200 mm/100
99999998 ...... ...... ......
This delimiting recording must be written at least once.
Terrain point recordings contain in the field of point numbers a code describing the point recorded. Such coding enables the application of WINPUT data for the creation of digital height models of a fine precision.
The general form of a terrain point record is
CC...LNR X Y Z
CC marks the first two (left justified) digits in the point number field: the code mentioned (see Table CC of codes). LINR stands for "line number" and denotes the right justified digits in the point number field.
NOTE: LNR is, in general, common to a series of terrain point records (line; points distributed at random should be grouped to such "lines", as well). Therefore, automatic point numbering (point numbers increased automatically by some recording devices) must not be used as LNR!
The point number field of a terrain point record can be represented as
_______________ | | | | | | | | | |C|C|.|.|.|L|N|R| |_|_|_|_|_|_|_|_| | |_______line number |___ code
LNR may contain a maximum of 4 right justified digits. Digits between CC and LNR are disregarded.
99999999 ...... ...... ......
This delimiting recording marks the end of a model, and it must be recorded at least one.
Group | Type | CC | |
---|---|---|---|
point disregarded by the program | 00 | ||
Profiles | profiles with x=const. | 10 | |
profiles with y=const. | 11 | ||
DTM grid points | 12 | ||
Alignment | 15 | ||
Cross Section | 16 | ||
Contour lines | in open terrain | 20 | |
uncertain (e.g. in forest) | 21 | ||
Points distributed at random | bulk data | 30 | |
Spot heights | high | 31 | |
low | 32 | ||
Formlines | open | 40 | |
closed | 41 | ||
Breaklines | open | 50 | |
closed | 51 | ||
Breaklines, which are also used as borderlines | omit right | open | 52 |
closed | 53 | ||
omit left | open | 54 | |
closed | 55 | ||
Borderlines | omit right with heights | open | 60 |
closed | 61 | ||
omit right without heights | open | 62 | |
closed | 63 | ||
omit left with heights | open | 64 | |
closed | 65 | ||
omit left without heights | open | 66 | |
closed | 67 | ||
outer borderline without heights | closed | 68 | |
exclusion line without heights | closed | 69 | |
Special points | off-terrain points | 70 | |
Elements of the situation | 80 ... 89 | ||
Control codes | deletion code | 90 | |
delimiter code | 99 |
In coding border lines (60-67) and border lines coinciding with breaklines (50-55) care should be taken as to precisely define where the representation (e.g. of contour lines on a map to be derived) should be omitted and vice versa. In this, left and right are determined in looking from the beginning of the line in the direction of its proceeding.
99999991 000000 000000 000000 begin model 00004243 000000 000000 000000 model number 99999992 000000 000000 000000 header group scales and units 00010000 000000 000000 000000 00000005 000000 000000 000000 00000001 000000 000000 000000 00000002 000000 000000 000000 99999993 000000 000000 000000 00000001 100000 100000 113645 00000002 100000 112500 111847 00000003 109500 100255 120345 99999994 109500 100255 120345 header group control points 00004635 103885 112733 112536 00004673 103383 118376 111238 00004344 109388 112736 109980 00004372 102828 112233 102222 42435546 113567 123425 112727 99999995 113567 123424 112727 00000100 113567 123425 112727 00000200 113567 123425 112727 99999998 113567 123425 112727 . . . . 99999998 113567 123425 112727 starting terrain point recordings 10000000 117546 112772 102992 10000000 117546 126489 102959 . . 51000123 192462 043119 103011 . . 30000000 121462 105726 134562 99999999 121462 105726 134562 end of model
The corresponding FORTRAN FORMAT specification: FORMAT(D8.0,3(1X,D6.0))