10.8.2. ВВОД И ВЫВОД ПРИ ИСПОЛЬЗОВАНИИ ПРОГРАММЫ-РЕДАКТОРА ТОЧЕК
Координаты точек можно вводить в редактор с помощью функции
описанной в разд. 1.7 (см. табл. 1.1). Прежде чем выбрать команду или адрес, необходимо выполнить еще ряд операций. В некоторых устройствах, предназначенных для указания точки на экране дисплея с автоматическим вводом ее координат, предусмотрены клавиши (кнопки), позволяющие пользователю вводить помимо координат один или несколько символов. Если число таких символов достаточно велико, то их можно использовать для кодирования команд. В противном случае пользователь может обратиться к меню — области, выделенной на боковой части экрана дисплея и разделенной на отдельные участки, обозначенные названиями соответствующих команд. Когда значения координат
сообщенные программе, попадают в один из этих участков, выбирается соответствующая команда.
Вторая проблема связана с выбором в списке точки, расположенной ближе всего к указанной пользователем. (Это соответствует случаю, когда пользователь хочет выбрать одну из имеющихся точек.) Тривиальным решением является поиск минимального эвклидова расстояния между заданной точкой и точками списка. Более эффективный способ предусматривает организацию вспомогательной структуры данных, в которой точки упорядочены в соответствии с их местоположением.
Алгоритм 10.3 представляет собой минимальный вариант программы-редактора точек. При его разработке предполагалось, что кроме элементарных команд преобразования графических данных, приведенных в табл. 1.2, предусмотрены также следующие элементарные команды:
(см. скан)
(см. скан)
Алгоритм 10.3. Программа-редактор точек.
(см. скан)
Алгоритм 10.3. предполагает, что имеется команда
обеспечивающая выход из цикла. Значения х и у, получаемые на шаге
2, должны быть введены в стек для дальнейшего использования.