Cтраница 2
Первый из них состоит в том, что программа трассировки отыскивает путь по структуре псевдодисплейного файла, передавая встречающуюся по пути информацию в соответствующий подпроцесс. Информация о преобразованиях поступает к программе совмещения, которая комбинирует новые параметры преобразований с действующими на данный момент. Графическая информация, содержащаяся в псевдодисплейном файле, передается программе преобразования и отсечения, которая преобразует ее в координаты экрана. Четвертый подпроцесс выполняется генератором дисплейного кода, который компилирует каждую преобразованную графическую единицу в соответствующие команды дисплейного файла. Указанные четыре процесса представлены на рис. 8.7. Обратите внимание, что программа совмещения всегда должна иметь доступ к текущим параметрам для генерирования новых параметров. [16]
Программа трассировки является самым простым из четырех процессов в системе преобразования. Она должна уметь следовать по структуре псевдодисплейного файла и распознавать различные типы встречающихся данных. Графическая информация передается соответствующей программе преобразования и отсечения, а параметры преобразования - программе совмещения, в которой они комбинируются с уже действующими параметрами. [17]
Графический вывод выполняется в соответствии с описанием, приведенным в гл. Параметры графических примитивов передаются непосредственно одной или двум программам преобразования и отсечения в зависимости от того, производится ли поворот. Затем преобразованная информация компилируется в дисплейные коды и добавляется к дисплейному файлу. Преобразования, указанные в обращении к процедуре отображения, передаются программе совмещения преобразований. [18]
Часто программисту удобнее иметь возможность выбирать способ задания преобразований привязки. Например, он может захотеть задавать габаритные поля положением границ, а не центром и размерами. Один весьма удобный способ обозначения для привязок символа состоит в использовании только габаритных полей привязки и основной копии; другими словами, программист как бы говорит: Я хочу, чтобы эта часть основной копии появилась в этом прямоугольнике. Пользуясь такими обозначениями, он избегает использования коэффициентов масштабирования, а в случае использования фиксированных габаритных полей, заданных по основной копии, он может даже не знать, в какой системе координат описана основная копия. Все эти варианты возможны, и задача программы совмещения состоит в извлечении необходимой ей информации из данных, поступающих от программы трассировки. [19]
Первый из них состоит в том, что программа трассировки отыскивает путь по структуре псевдодисплейного файла, передавая встречающуюся по пути информацию в соответствующий подпроцесс. Информация о преобразованиях поступает к программе совмещения, которая комбинирует новые параметры преобразований с действующими на данный момент. Графическая информация, содержащаяся в псевдодисплейном файле, передается программе преобразования и отсечения, которая преобразует ее в координаты экрана. Четвертый подпроцесс выполняется генератором дисплейного кода, который компилирует каждую преобразованную графическую единицу в соответствующие команды дисплейного файла. Указанные четыре процесса представлены на рис. 8.7. Обратите внимание, что программа совмещения всегда должна иметь доступ к текущим параметрам для генерирования новых параметров. [20]