HP-GL

Язык графики Hewlett-Packard
Тип интернет-СМИ
приложение/vnd.hp-HPGL

HP-GL , сокращение от Hewlett-Packard Graphics Language и часто пишется как HPGL , — язык управления принтером, созданный Hewlett-Packard (HP). HP-GL был основным языком управления принтером, используемым плоттерами HP . [1] Он был представлен с плоттером HP-9872 в 1977 году и стал стандартом почти для всех плоттеров. Принтеры Hewlett-Packard также обычно поддерживают HP-GL/2 в дополнение к PCL . [2]

Дизайн

Язык формируется из серии двухбуквенных кодов ( мнемоники ), за которыми следуют необязательные параметры. Например, дугу можно нарисовать на странице, отправив строку:

AA100,100,50;

Это означает Arc Absolute , а параметры помещают центр дуги в абсолютные координаты 100,100 на странице, с начальным углом 50 градусов, измеренным против часовой стрелки. Четвертый необязательный параметр (здесь не используется) указывает, как далеко продолжается дуга, и по умолчанию равен 5 градусам.

При первом появлении HP-GL содержал следующие команды:

КомандаЗначение
Группа Векторов
PAх,у{,х,у{...}}Участок абсолютный [i]
PRх,у{,х,у{....}}Относительный сюжет [i]
PDРучка вниз
PUРучка вверх
Группа персонажей
CAнОбозначить альтернативный набор символов n [i]
CPпробелы, линииХарактер сюжета [d]
CSмОбозначить стандартный набор m [i]
DIбежать, подниматьсяАбсолютное направление [d]
DRбежать, подниматьсяОтносительное направление [d]
LBс, ..., сСтрока ASCII метки [c]
SAВыбрать альтернативный набор символов
SIширокий, высокийАбсолютный размер символа [d]
SLтангенс θАбсолютный наклон символа (от вертикали) [d]
SRширокий, высокийОтносительный размер символа [d]
SSВыберите стандартный набор символов
UCх, у, ручка{, ...}Пользовательский символ [i]
Группа типов линий
LTт{,л}Обозначьте тип линии t и длину l [d]
SMсРежим символа [c]
SPнВыберите ручку [i]
VAАдаптивная скорость
VNНормальная скорость
VSв{,н}Выберите скорость v для пера n [i]
Группа оцифровки
DCОцифровать ясно
DPОцифровать точку
OCВывод текущего положения и состояния пера
ODВывод оцифрованной точки и статуса пера
Топоры
TLтп{,тн}Длина тика [d]
XTОтметка оси X
YTОтметка оси Y
Группа настройки
IPп1х,п1у,п2х,п2уВходные данные p1 и p2 [i]
IWxlo,ylo,xhi,yhiОкно ввода [i]
OPВыход p1 и p2 [i]
Статус конфигурации
APАвтоматический захват пера [i]
DFУстановить значения по умолчанию
IMе{,с{,п}}Введите маски e, s и p [i]
INИнициализировать
OEОшибка вывода [i]
OSСтатус вывода [i]
Добавлены команды (когда?)
SIч,чустановить ширину и высоту символа

Форматы:

  • [i]: целочисленные форматы от -32767 до 32768. Без десятичной точки.
  • [d]: десятичный формат между +/- 127,9999. Необязательная десятичная точка.
  • [c]: символ ASCII

Примеры

Типичные файлы HP-GL начинаются с нескольких команд настройки, за которыми следует длинная строка графических команд. Файл был в формате ASCII ( текстовый файл ) , например:

Пример файла HP-GL
КомандаЗначение
В;инициализировать, начать задание по построению графика
ИС;установите точки масштабирования (P1 и P2) в их положения по умолчанию
СП1;выберите ручку 1
ПУ0,0;поднимите Pen Up и перейдите в исходную точку для следующего действия
ПД100,0,100,100,0,100,0,0;положите ручку вниз и перейдите в следующие места (нарисуйте рамку вокруг страницы)
ПУ50,50;Pen Up и переместитесь в точку с координатами X,Y 50,50
CI25;нарисуйте круг радиусом 25
SS;выберите стандартный набор символов
ДТ*,1;установите разделитель текста на звездочку и не печатайте их (1, что означает «истина»)
ПУ20,80;поднимите ручку и переместите на 20,80
LBПривет, мир*;нарисуй этикетку

Система координат основывалась на наименьших единицах, которые мог поддерживать один из плоттеров HP, и была установлена ​​на 25 мкм (т. е. 40 единиц на миллиметр, 1016 на дюйм). Координатное пространство представляло собой положительные или отрицательные числа с плавающей точкой , а именно ±2 30 .

HP-GL/2

Исходный язык HP-GL не поддерживал определение ширины линии, так как этот параметр определялся перьями, загруженными в плоттер. С появлением первых струйных плоттеров, ширина линии для «перьев», указанных в файлах HP-GL, должна была быть установлена ​​на принтере, чтобы он знал, какую ширину линии печатать для каждого пера, громоздкий и подверженный ошибкам процесс. С появлением Hewlett-Packard Graphics Language/2 , также известного как HP-GL/2 , определение ширины линии было введено в язык и позволило исключить этот шаг. Также, среди других улучшений, был определен двоичный формат файла , который позволял использовать файлы меньшего размера и сокращать время передачи файлов, а минимальное разрешение было уменьшено.

Примеры команд HP-GL/2
КомандаЗначение
НПхколичество загонов; x=1..256
ПКx,r,g,bцвет пера; x=перо, r=красный, g=зеленый, b=синий, 0..255
ПВв,хширина пера; w=ширина пера в мм с десятичной точкой, x=перо

АГЛ

HP-GL связан с AGL (A Graphics Language), расширением языка программирования BASIC . AGL был реализован на миникомпьютерах Hewlett-Packard для упрощения управления плоттером. Команды AGL описывают желаемую функцию графического построения, которую компьютер передает плоттеру в виде нескольких инструкций HP-GL.

Смотрите также

  • DMPL , еще один язык плоттеров от Houston Instruments
  • Формат Gerber — это еще один формат описания сюжета.
  • Logo — компьютерный язык с командами рисования, похожими на HP-GL

Ссылки

  1. ^ Дэниелс, Томас Х.; Хеннесси, Ларри У. (сентябрь 1977 г.). «Простой в использовании язык интерфейса управления плоттером HP-IB» (PDF) . Журнал Hewlett-Packard . 29 (1): 5. Архивировано (PDF) из оригинала 27.02.2017 . Получено 12.09.2016 .
  2. ^ Техническое справочное руководство по языку принтера PCL 5 (1-е изд.). Компания Hewlett-Packard . Сентябрь 1990 г. Номер детали HP 33459-90903.(Примечание. Главы 15–21 также содержат описание HP-GL/2.)

Дальнейшее чтение

  • Hewlett-Packard Company, Barcelona Division (сентябрь 1996 г.) [1990 г.]. Справочное руководство по HP-GL/2 и HP RTL — Справочник для разработчиков программ — Hewlett-Packard Graphics Language/2 — Hewlett-Packard Raster Transfer Language (черновик 2, второе издание). Барселона, Испания: Addison-Wesley Publishing Company . ISBN 0-201-63325-6. Номер детали HP 5961-3526, 5959-9733. Архивировано из оригинала 2017-02-27 . Получено 2017-02-28 .
  • "Hewlett-Packard Graphics Language Commands". Архивировано из оригинала 27.02.2017.
  • "Обзор HP-GL" (PDF) . Архивировано из оригинала (PDF) 2018-06-13.
  • "Chiplotle" . Получено 2023-02-15 .(Примечание. Библиотека управления плоттером HP-GL на основе Python для использования старинных перьевых плоттеров с современными операционными системами.)
Взято с "https://en.wikipedia.org/w/index.php?title=HP-GL&oldid=1223662390"