HP-GL , abreviatura de Hewlett-Packard Graphics Language y a menudo escrito como HPGL , es un lenguaje de control de impresora creado por Hewlett-Packard (HP). HP-GL fue el principal lenguaje de control de impresora utilizado por los plotters HP . [1] Se introdujo con el plotter HP-9872 en 1977 y se convirtió en un estándar para casi todos los plotters. Las impresoras de Hewlett-Packard también suelen ser compatibles con HP-GL/2 además de PCL . [2]
El lenguaje se forma a partir de una serie de códigos de dos letras ( mnemónicos ), seguidos de parámetros opcionales. Por ejemplo, se puede dibujar un arco en una página enviando la cadena:
AA100,100,50;
Esto significa Arco absoluto y los parámetros colocan el centro del arco en las coordenadas absolutas 100,100 en la página, con un ángulo inicial de 50 grados medido en sentido antihorario. Un cuarto parámetro opcional (no se utiliza aquí) especifica hasta dónde continúa el arco y el valor predeterminado es 5 grados.
Cuando se introdujo por primera vez, HP-GL contenía los siguientes comandos:
Formatos:
Los archivos HP-GL típicos comienzan con algunos comandos de configuración, seguidos de una larga cadena de comandos gráficos. El archivo estaba en formato ASCII ( archivo de texto ) , por ejemplo:
El sistema de coordenadas se basaba en las unidades más pequeñas que uno de los trazadores HP podía admitir y se estableció en 25 μm (es decir, 40 unidades por milímetro, 1016 por pulgada). El espacio de coordenadas estaba formado por números de punto flotante positivos o negativos , específicamente ±2 30 .
El lenguaje original HP-GL no admitía la definición del ancho de línea, ya que este parámetro lo determinaban las plumas cargadas en el trazador. Con la llegada de los primeros trazadores de inyección de tinta , el ancho de línea de las "plumas" especificadas en los archivos HP-GL debía configurarse en la impresora para que supiera qué ancho de línea imprimir para cada pluma, un proceso engorroso y propenso a errores. Con Hewlett-Packard Graphics Language/2, también conocido como HP-GL/2 , se introdujo la definición del ancho de línea en el lenguaje y se permitió la eliminación de este paso. Además, entre otras mejoras, se definió un formato de archivo binario que permitía archivos más pequeños y tiempos de transferencia de archivos más cortos, y se redujo la resolución mínima.
HP-GL está relacionado con AGL (A Graphics Language), una extensión del lenguaje de programación BASIC . AGL se implementó en las minicomputadoras Hewlett-Packard para simplificar el control de un trazador gráfico. Los comandos AGL describen la función de trazado gráfico deseada, que la computadora transmite como varias instrucciones HP-GL al trazador gráfico.