· Процедура предназначена для получения начальных координат указателя мыши перед началом перетаскивания выделяющего окна
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject);
- входной параметр – индикатор нажатой кнопки мыши (тип TMouseButton);
- входной параметр – индикатор нажатой клавиши (тип TShiftState);
- входные параметры – координаты указателя мыши (тип integer)
· Словесный алгоритм
Координаты указателя записываются в глобальные переменные X0 и Y0. Индикатору перетаскивания drag присваивается true.
Процедура ShapeViewMouseUp
· Процедура предназначена для установки значения соответствующего индикатора при окончании перетаскивания окна выделения
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject);
- входной параметр – индикатор нажатой кнопки мыши (тип TMouseButton);
- входной параметр – индикатор нажатой клавиши (тип TShiftState);
- входные параметры – координаты указателя мыши (тип integer)
· Словесный алгоритм
Индикатору перетаскивания drag присваивается false.
Процедура ShapeViewMouseMove
· Процедура предназначена для перемещения окна выделения по малой карте и вывода на карту изображений точек из выделенной области
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject);
- входной параметр – индикатор нажатой клавиши (тип TShiftState)
- входные параметры – координаты указателя мыши (тип integer)
· Предусловия
Индикатор перетаскивания должен быть равен true.
· Локальные переменные
- newLeft, newTop – новые координаты окна выделения (тип integer)
· Словесный алгоритм
Процедура вычисляет новые координаты окна выделения и области просмотра с использованием глобальных переменных X0 и Y0; затем осуществляет поиск и вывод на карту изображений точек из новой области с помощью процедуры DrawRegion.
Процедура MaxImageMouseMove
· Процедура предназначена для отображения координат выделяемых точек в строке состояния и выделения их изображений на карте
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject);
- входной параметр – индикатор нажатой клавиши (тип TShiftState);
- входные параметры – координаты указателя мыши (тип integer)
· Локальные переменные
- Point – выделенная точка (тип TPoint);
- Rect – область поиска точки в дереве (тип TRect);
- str – строка с координатами выбранной точки (тип string);
- List – список точек, найденных в области вблизи указателя мыши
· Словесный алгоритм
Подпрограмма выводит в строку состояния координаты движущегося указателя мыши и осуществляет проверку того, наведен ли он на точку, путем поиска точек дерева в области вокруг указателя. Если таковые имеются, изображение первой из них перерисовывается соответствующим цветом.
Процедура MaxImageClick
· Процедура предназначена для добавления точки в дерево и «запоминания» координат выбранной точки
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject)
· Локальные переменные
- Point – новая либо выбранная точка (тип TPoint);
- str – строка с координатами выбранной точки (тип string);
- i, j – координаты точки относительно окна просмотра (тип integer)
· Словесный алгоритм
Подпрограмма получает координаты новой (или выбранной) точки из строки состояния. Затем, если программа находится в режиме добавления точек, вставляет в дерево новую точку; в зависимости от результата функции вставки, увеличивает счетчик точек на единицу и перерисовывает изображение. В режиме выбора точек процедура записывает в глобальную переменную координаты выбранной точки и перекрашивает ее на карте соответствующим цветом. Координаты выбранной точки выводятся в строку состояния.
Процедура ButtonDeleteClick
· Процедура предназначена для удаления выбранной точки из дерева
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject)
· Словесный алгоритм
Подпрограмма удаляет выбранную точку из дерева; затем, если необходимо, перерисовывает просматриваемую область карты.
Процедура ButtonClearClick
· Процедура предназначена для удаления всех точек из дерева
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject)
· Словесный алгоритм
Подпрограмма удаляет все точки из дерева, «стирает» изображение с карты и устанавливает «пустые » координаты для выбранной и текущей точек.
Процедура FormKeyDown
· Процедура осуществляет перемещение окна выделения при нажатии клавиш
· Процедура является методом класса TMainForm
· Параметры
- входной параметр – объект, сгенерировавший событие (тип TObject);
- выходной параметр – индикатор нажатой клавиши (тип word);
- входной параметр – индикатор нажатой клавиши (тип TShiftState)
· Локальные константы
– dif = 4 – число пикселей, на которое перемещается окно выделения
· Словесный алгоритм
Подпрограмма вызывает перемещающую окно выделения процедуру ShapeViewMouseMove, передавая ей разные параметры в зависимости от нажатой клавиши.
Заключение
Разработанный программный продукт обеспечивает выполнение всех требований, предъявленных к нему в техническом задании.
Программный продукт рекомендован к использованию для широкого круга пользователей. Использование программного продукта позволяет существенно облегчить работу с множествами и ускорить их обработку.
Дата: 2019-07-24, просмотров: 194.