Абстрактный графический тип данных - Abstract graphical data type

An абстрактный графический тип данных (AGDT) является продолжением абстрактный тип данных за компьютерная графика. AGDT предоставляют преимущества ADT с возможностью построения графических объектов структурированным способом. Формально AGDT можно определить как «класс графических объектов, логическое поведение которых определяется набором графических характеристик и набором графических операций».

AGDT были введены в 1979 г. Надя Магненат Тельманн и Даниэль Тельманн.[1]

Самый важный инструмент в этом графическом расширении - это трехмерный графический тип - тип фигуры. Синтаксис показан на рисунке 2. Слово «рисунок» является ключевым словом. Раздел формальных параметров, объявление и тело аналогичны соответствующим элементам процедуры.

Чтобы определить тип фигуры, необходимо

  1. найти характеристики фигуры, которые становятся параметрами;
  2. найти алгоритм, который позволяет пользователю построить фигуру с помощью параметров.

Для построения рисунков следует использовать типичные графические утверждения, например: moveabs, Moverel, Lineabs, и линейный для рисования векторов и включения, чтобы определить существующую фигуру как часть новой.

Например, пирамида с четырьмя вершинами можно определить как

введите ПИРАМИДА = рисунок (A, B, C, D: VECTOR); beginmoveabs A; lineabs B, C, A, D, C; moveabs B; lineabs Dend;

А дерево может быть определен трехмерными графическими типами как

type TREE = figure (var BRANCHES: TEXT; NBRANCHES: INTEGER; POSITION: VECTOR; HEIGHT, LENGTH: REAL);

где BRANCHES - это файл типов ветвей, NBRANCHES - количество ветвей, POSITION - позиция ствола, HEIGHT - высота ствола, а LENGTH - длина ветвей.

Лес деревьев можно определить как

var FOREST: массив [1..NBTREES] ДЕРЕВА

Абстрактные графические типы были реализованы как расширение Язык программирования PASCAL называется МИРА-3Д.[2]

Рекомендации

  1. ^ Н. Магненат Тельманн, Д. Тельманн, Дизайн и реализация абстрактных графических типов данных, Proc. 3-я Международная конференция по компьютерному программному обеспечению и приложениям (COMPSAC'79), IEEE, Чикаго, США, 1979, стр. 519-524
  2. ^ Н. Магненат-Тельманн, Д. Тельманн, MIRA-3D: трехмерное графическое расширение PASCAL, Программное обеспечение - практика и опыт, Том 13, 1983, стр.797-808