USING LITES2 AS A 3 DIMENSIONAL EDITOR
LITES2 AS A 2 DIMENSIONAL OR A 3 DIMENSIONAL EDITOR
In its default mode of operations, LITES2 is a two dimensional editor.
This means that its geometrical treatment of features only relates to
X and Y coordinates. Z information can be associated with individual
points, but it is treated as an attribute of that point, not as a
coordinate. Any manipulation of Z values is the responsibility of the
operator, and is carried out by means of the EDIT ATTRIBUTE Z command.
The Z point attribute is unique, in that it is always available whether
or not the logical name LSL$IFF_OUTPUT_REVISION has been set to 1 or
By use of the (licensed) command ENABLE Z, LITES2 can be made to operate
as a 3 dimensional editor. This means that Z is treated as a 3rd
coordinate of all the points in the IFF files, and can be edited
graphically in the same way as the X and Y coordinates. This graphical
editing is carried out using the 3 dimensional nature of the LITES2
THE 3 DIMENSIONAL CURSOR IN LITES2
The LITES2 cursor can be positioned in 3 dimensions. This is achieved
by the use of the optional 3rd argument in the POSITION and ABSOLUTE
commands. If this argument is not given then the height of the cursor
Digitising devices (e_.g_. digitising tables, bitpads or mice)
have no height information and only position the cursor in two
dimensions (X and Y), however when LITES2 is using the KERN DSR
photogrammetric plotter as an input device, it positions the cursor
in three dimensions (X, Y and Z).
Great care must be taken when using digitising tables, bitpads and mice
to position the cursor when using LITES2 with Z enabled. It is very
easy to lose the z coordinates of points under these conditions.
The height of the cursor can be ascertained at any time by the SHOW
POSITION command. If ENABLE Z has been given then all three coordinates
will be displayed; if the cursor height is undefined then a "?" is
displayed in place of the Z coordinate. If Z is disabled (the default
state) then the Z coordinate of the cursor is only displayed if it is
set to a definite value.
These values are available in the system variables _$CURSX, _$CURSY and
_$CURSZ. There is an additional variable _$CURSZ_EXIST which is true
if the Z value of the cursor is defined.
POSITIONING THE CURSOR ON A FEATURE
When using LITES2 as a 2 dimensional editor and moving the cursor to a
position defined by a feature (by FIND, SEARCH, FIRST, LAST, FRACTION
etc) the height of the cursor is unaltered.
However when using LITES2 as a 3 dimensional editor,
and moving the cursor to a position defined by a feature (by FIND,
SEARCH, FIRST, LAST, FRACTION etc) the height of the cursor depends on
the Z value of each point in the feature. If the cursor is positioned
between two points, the Z value is interpolated in exactly the same way
as the plan values are.
If, while the cursor is constrained on a feature, another feature is
intersected, then the height of the cursor is determined by the height
of the points in the original feature.
While each point in an IFF file must have an X and Y value, Z values
need not be present. If the cursor is moved to between two points that
do not have Z values, the cursor height will not be altered; if however
one of the adjacent points is heighted, then the cursor will take its
It is strongly recommended that when using LITES2 as a 3D editor, all
existing data has proper 3D coordinates.
It should also be noted that Z values which are not present are
undefined. They are not 0.0. 3 dimensional displays (eg the Kern
KRISS image injection system) may however treat undefined values as
The 3 dimensional editing capability of LITES2 uses the Z attribute of
individual points. It does not use any height information held in
ancillary codes (ACs) 2 or 3 (contour or real height).
CONSTRUCTING NEW 3 DIMENSIONAL FEATURES.
Linear 3 dimensional features are simply created by positioning the
LITES2 cursor and giving the START command. If the Z position is defined
then this value will be added to the feature. To complete the feature
the END command is given at the last point.
It should be noted that when operating in 3 dimensional mode, it is
possible to have two adjacent points on a feature with the same plan
position, as long as their heights are different. If such a feature is
subsequently read into LITES2 when Z is disabled, then the second point
will be lost.
If points are interpolated in a linear feature using the CURVE command,
then the heights of the interpolated points are equally spaced between
the heights of the master points. This is true whether Akima or
McConalogue interpolation in X and Y is being used.
The heights of points generated by the CIRCLE, POLYGON, ARC, POLARC and
RECTANGLE commands are determined by projecting the generated plan
positions onto the plane through the master points. If there are only
two master points (eg CIRCLE CENTRED) then the plane whose direction of
maximum slope goes through these points is used. The affect of this is
to generate features that have the expected shape on the map, not in 3
Features of graphical types 2,3,4 and 5 (various types of circles and
arcs) are constructed using appropriate START and END commands in the
usual way, and a feature that is circular in plan is created.
Each of these features has a 3 dimensional plane associated with it, and
this is used to determine the height of any point on it (e_.g_. this
plane is used to position the cursor at the correct height during
Symbols and texts take their height from the cursor when START is given.
The height of the cursor at any second orienting or scaling point is
ignored. Separate subtexts in composite texts can each have a different
EDITING 3 DIMENSIONAL FEATURES
Most of the 2 dimensional editing operations are available when using
LITES2 as a 3 dimensional editor. The only exception to this is the
FILTER command, which is not available when Z has been enabled.
There follows some comments on the manipulation of Z during various
EDIT, EXTEND AND INSERT
These commands allow the Z value of a point to be altered (as well as its
plan position) depending on the position of the cursor. The Z value can
also be edited explicitly using the EDIT ATTRIBUTE Z command.
While using these commands the commands FORCE FLAT and FORCE SLOPE can
be used to position the Z value of the cursor relative to the vector
being edited. FORCE FLAT will return Z to the value it was at when the
editing command was given; FORCE SLOPE will force Z to lie on the plane
whose direction of maximum slope lies through the two points defining
the vector being edited.
When using the EXTEND command, the cursor is constrained to move in the
line defined by the end vector of the feature. This constraint only
applies to the plan position. The cursor will maintain any Z value it is
JOIN, TIE, MEND AND LOOP
These commands position the cursor between the two points being joined
together. This applies to the Z coordinate in the same way as it does to
X and Y. If the Z value of one point is undefined, then the Z value of
the other point is used.
If the PROPAGATE command is given while JOINing or TIEing, the
difference in Z between the selected point and the ends of the features
is smoothed out along the same distance as the differences in plan
CLOSE (NORMAL) positions the cursor to the X, Y and Z of the first
point in the construction.
CLOSE SQUARE inserts a point on the line between the last digitised
point and the cursor position, when the CLOSE SQUARE command is given.
The height of this point is interpolated between the last digitised
point and the cursor position, in the same way as the plan position.
The cursor is finally positioned to the first point in the construction.
PART OPERATIONS, SPLIT, CLIP, INCLUDE AND BRIDGE
Editing operations that generate new points based on existing features
linearly interpolate a Z value for these points in the same way as the X
and Y are calculated. When circle arcs are clipped or split, the
resulting features all lie on the same plane as the original feature.
ORIENT, TRANSFORM AND OFFSET
When the plan positions of features are altered using these commands the
Z values of the points are not altered.
When the plan positions of features are altered using this command, the
Z values of all the points are altered by the difference in height
between the point on the feature that the cursor was at when MOVE was
given and the cursor height when END is given.
While edgematching, heights are treated as in the primitive JOIN and TIE
commands. As with the differences in plan position, the misclosure in Z
is smoothed out back along both features if the propagating tolerance
is greater than 0.0.
When selecting features to edgematch, no account is taken of the Z
coordinates. Only the plan position is considered.
COMPOSITE TEXT MANIPULATION
When the PARAGRAPH command is given, all the resulting subtexts acquire
the height of the first subtext.
When using the
according to its position on the locating feature.