Константы
· Xmax = 1024 – ширина всего квадрата, отведенного под Q-дерево;
- тип – целый;
- область видимости – внутри и вне модуля;
- используется в операциях вставки и удаления элементов для задания границ главного квадранта
· K = 10.56 – отношение длины стороны окна выделения к длине стороны окна просмотра;
- тип – вещественный;
- область видимости – внутри модуля;
- используется при выводе на карту изображений точек
· R = 3 – радиус точки, изображенной на карте;
- тип – целый;
- область видимости – внутри модуля;
- используется при выводе изображений точек
· LightColor = clYellow – цвет подсветки точек;
- тип – TColor;
- область видимости – внутри модуля;
- используется при выводе изображений точек
· SelectColor = clRed – цвет выделенной точки;
- тип – TColor;
- область видимости – внутри модуля;
- используется при выводе изображений точек
· BackColor = clBtnFace – цвет фона карты;
- тип – TColor;
- область видимости – внутри модуля;
- используется при выводе изображений точек.
Переменные
· Tree – указатель на корневой узел дерева;
- тип – PNode;
- область видимости – внутри модуля;
- используется в подпрограммах, работающих с деревом.
· X0, Y0 – начальные координаты указателя мыши при перемещении окна выделения;
- тип – целый;
- область видимости – внутри модуля;
- используются при определении координат просматриваемой области карты
· drag = false – индикатор перетаскивания окна выделения;
- тип – логический;
- область видимости – внутри модуля;
- используется при определении координат просматриваемой области карты
· PointCount = 0 – количество точек в дереве;
- тип – целый;
- область видимости – внутри модуля;
- используется для определения числа точек в дереве
· mainBounds, Query – координаты соответственно главного квадранта и выделенной области;
- тип – TRect;
- область видимости – внутри модуля;
- используются при поиске и выводе изображений точек просматриваемой области
· LightPoint, SelectedPoint – соответственно текущая и выделенная точки;
- тип – TPoint;
- область видимости – внутри модуля;
- используются для выбора и удаления точек.
Подпрограммы модуля
Процедура DrawPoint
· Процедура предназначена для вывода изображений точек на карту
· Процедура является методом класса TMainForm
· Параметры
- параметр-константа – точка (тип TPoint);
- входной параметр – цвет изображенной точки (тип TColor);
· Локальные переменные
- dopX, dopY – координаты точки относительно окна просмотра (тип integer).
· Словесный алгоритм
Процедура вычисляет координаты отображаемой точки для каждой из карт (большой и малой) и рисует точку в виде эллипса радиусом R.
Процедура ClearBackground
· Процедура стирает предыдущее изображение на карте
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – компонент-карта (тип TImage);
· Словесный алгоритм
Процедура закрашивает поверхность карты цветом фона BackColor.
Процедура DrawRegion
· Процедура предназначена для поиска и вывода изображений точек дерева в заданной области карты
· Процедура является методом класса TMainForm
· Параметры
- параметр-константа – указатель на узел дерева (тип PNode);
- параметр-константа – границы заданной области (тип TRect);
· Локальные переменные
- FindedPoints – список найденных точек (тип TList);
- dopPoint – точка из списка (тип TPoint);
- i – счетчик цикла (тип integer).
· Словесный алгоритм
Процедура создает пустой список, копирует туда точки дерева, найденные в заданной области, и выводит их изображения на карты.
Процедура FormCreate
· Процедура предназначена для задания начальных координат областей и точек
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject)
· Словесный алгоритм
Процедура устанавливает границы главного квадранта и выделенной области, начальные координаты для текущей и выбранной точек.
Дата: 2019-07-24, просмотров: 194.