Языки программирования машинной графики.
Классификация графических языков САПР.
Графические языки - формальные языки, предназначенные для описания графических изображений и алгоритмов их обработки на ЭВМ. Они относятся к классу проблемно - ориентированных языков.
Графические языки, используемые в системах автоматизированного проектирования, классифицируются по следующим признакам: оперативности; наличию средств для описания операций обработки; связи с универсальными алгоритмическими языками программирования; способу задания команд (операторов) языка; месту в процессе обработки графических данных.
По оперативности языки делятся на диалоговые (оперативные) и пассивные. Диалоговые языки обеспечивают работу в реальном масштабе времени путем обработки операторов языка в режиме интерпретации, что позволяет оперативно получать результат выполнения вводимой программы в графической форме.
Пассивные языки позволяют задавать совокупность графических операций в виде некоторого символического описания с последующей компиляцией этих описаний и выполнением в режиме пакетной обработки.
По наличию средств для описания операций обработки выделяют информационные и алгоритмические языки. Информационные языки позволяют описывать только графические данные. Алгоритмические языки предназначены для описания графических данных и операций над ними, включая вычислительные операции, операции управления вводом - выводом и хранения данных.
По связи с универсальными алгоритмическими языками различают автономные и расширяющиеся языки. Автономный язык имеет собственную грамматику, соответствующий транслятор с него и может применяться независимо от других языков программирования. Расширяющиеся языки строятся на основе грамматики других языков и являются графическим дополнением этого языка.
По способу задания операторов языка выделяют символические (алфавитно - цифровые), цифровые и графосимволические языки. Программа на символическом языке представляет последовательность текстовых строк фиксированного или произвольного формата. Цифровые языки представляют собой чаще всего некоторые таблицы, в которых числами задаются как коды графических команд, так и их параметры. Графосимволические языки, как правило, диалоговые позволяют задавать графическую информацию в форме комбинации текстовых директив и графических построений.
По месту в процессе обработки графических данных различают входные, внутренние и выходные графические языки. Входные языки предназначены для описания и ввода графических данных в ЭВМ.
Внутренние языки предназначены для программной обработки данных, накопления и хранения в системе, применяются в качестве графических протоколов связи между различными компонентами системы. внутренние языки часто предстают в виде основных форматов, так называемых графических метафайлов, которые предназначены для долговременного хранения графических данных в независимых от конкретных устройств форматах.
Выходные языки предназначены для выхода данных из ЭВМ с целью графического отображения и документирования.
Диалоговые языки в САПР являются формальным средством описания задач проектирования в диалоговом режиме, задания правил преобразования входных данных, определения формы выдачи результатов.
Языковые средства МГ предназначены для разработки подсистем ввода графических данных, геометрического моделирования и формирования проектно - графической документации.
Входные графические языки (ВГ - языки) относятся к информационным языкам МГ и предназначены для описания и ввода в ЭВМ графических данных и задания ограниченных действий над ними.
Процедурные языки предназначены для описания графических данных, алгоритмов формирования и изменения изображений в процессе автоматизированного проектирования.
В современных САПР наибольшее распространение получили символические (алфавитно - цифровые) и графосимволические ВГ - языки.
Операторы символических ВГ - языков задаются в виде текстовых строк фиксированного или переменного формата.
Операторы графосимволических языков вводятся в ЭВМ с графических терминалов с помощью алфавитно - цифровой и (или) функциональной клавиатуры, устройств управления световым маркером или с помощью устройства указания и считывания координат на планшете ввода.
Терминология ВГ - языков должна быть близка к обычной инженерной терминологии, чтобы облегчить процесс освоения языка и ввода графических данных непосредственно специалистами прикладной области без посредника - специалиста в области программирования.
ВГ - языки должны быть ориентированы на описание объекта и на ввод изображения. Особенность ВГ - языков первого типа состоит в том, что в результате трансляции описания в ЭВМ формируется модель геометрии объекта в трехмерном пространстве, которая может быть представлена на устройствах отображения в виде изображения произвольных проекций, сечений, разрезов.
Результатом трансляции описания на языках второго типа является то изображение, которое введено. Эти языки используются в САПР для ввода типовых графических элементов чертежей (ТЭЧ).
ВГ - языки для описания изображений основаны на использовании некоторых общих подмножеств команд, которые обеспечивают:
построение графических примитивов;
задание атрибутов графических примитивов;
построение графических изображений произвольной конфигурации;
построение изображения из ограниченного множества элементов, имеющих типовую конфигурацию;
сокращение избыточности описания на основе использования принципа умолчания и признаков повторения;
преобразование изображения (аффинные и другие преобразование);
документирование информации в графическом, текстовом виде или запись на машинных носителях;
прием и передачу информации;
управление устройствами вывода.
Подмножества этих команд могут быть расширены или сокращены в зависимости от области и условий использования конкретного языка.