Logical operations can be applied to the surface and the polygon if the polygon is closed. The calculation uses
the X and Y coordinates:
- removal of all points outside the polygon;
- removal of all points inside the polygon;
- setting Z coordinate as equal to a given constant for all points outside the polygon;
- setting Z coordinate as equal to a given constant for all points inside the polygon.
Visualisation
Modes for displaying objects:
- 2D – two-dimensional visualisation;
- 3D – three-dimensional visualisation.
Visualisation windows can be opened using a special button. By default, if there are no windows yet, a 2D view
window is created.
When the first object appears, the window is adjusted so that the whole object is placed in the centre, with free
space at the edges equal to 1/10 of the total size of the window. When an object in the tree is selected, it is
displayed in all open visualisation windows.
The object with the highest Z coordinate value is located above the others (it is displayed on top of the other
objects). When two surfaces intersect, the closer part of the surfaces is drawn, and the farther part is hidden.
If the point or polygon lies below the rendered surface, then it does not appear.
Depending on the settings, bitmaps are drawn behind or on top of all other objects. The degree of transparency
can be set so that the objects that are farther away are not completely hidden when displayed.
Multiple source files can be displayed. Changes to the colour palette of the surface, raster image transparency
etc. are implemented ‘on the fly’. Pressing Ctrl and the left mouse button allows the user to identify the
height at any given point on the surface, and the keyboard shortcut Ctrl + F directs the ‘camera’ to the
selected object in the tree.
The bitmap object is assigned coordinates to snap the raster and prevent shifting when zooming. Each object has
its own visualisation settings.
To customise surface displays, the program recommends setting up a discrete or continuous palette.
2D visualisation displays raster images, points, polygons and surfaces in the horizontal plane. Component logic
is implemented from scratch by means of .NET WPF. When zooming in or moving objects, only the visible parts of
the objects are drawn.
For 3D visualisation, a grid is drawn. One of three types of light source can be selected: solar, three-point, or
standard.
An arrow is displayed in the lower left corner, which rotates with all objects and points to the north, in the
direction of increasing ordinates (Y coordinate). The lower part of the arrow (in the direction of the
decreasing Z coordinate) is coloured red, and the upper part (in the direction of the increasing Z coordinate)
is coloured blue.
Isoline calculation
Isolines are surface lines with identical height value. Isolines make it possible to visualise flat and angular
objects. The closer the isolines are to each other, the greater the curvature of the surface.
Based on the minimum and maximum surface heights and the step size specified in the settings, a set of heights at
which isolines will be drawn is calculated. Then, at each height level, a set of isolines is calculated using
the marching squares algorithm.