WIPIVERSE

HP-GL

HP-GL, short for Hewlett-Packard Graphics Language(약칭 HPGL),는 Hewlett-Packard(HP)사가 개발한 페이지 기술 언어(page description language)이다. 1977년 HP-9872 플로터와 함께 처음 도입되었으며, 이후 HP사의 플로터에서 사용되는 표준 명령어 세트로 자리 잡았다.

개요

HP-GL은 펜 플로터(pen plotter)를 제어하기 위해 설계된 벡터 그래픽 언어이다. ASCII 텍스트 기반 파일 형식을 사용하며, 두 글자의 니모닉(mnemonic) 코드와 선택적 매개변수로 명령어를 구성한다. 예를 들어 "AA100,100,50;"은 Arc Absolute 명령어로, 절대 좌표 (100,100)를 중심으로 50도에서 시작하는 호를 그리라는 의미이다.

명령어 구성

명령어는 다음과 같은 그룹으로 분류된다:

  • 벡터 그룹: PA(절대좌표로 이동), PR(상대좌표로 이동), PD(펜 내리기), PU(펜 올리기)
  • 문자 그룹: CA(대체 문자셋 지정), LB(레이블 문자열 출력), SI(문자 크기 절대값 설정), SL(문자 기울기 설정)
  • 선 유형 그룹: LT(선 유형 지정), SP(펜 선택), VS(펜 속도 선택)
  • 디지타이즈 그룹: DP(점 디지타이즈), OC(현재 위치 출력)
  • 설정 그룹: IP(입력 좌표 범위 설정), IW(입력 창 설정), IN(초기화)

좌표계

좌표계는 HP 플로터가 지원하는 최소 단위를 기준으로 하며, 25μm(밀리미터당 40단위, 인치당 1016단위)의 해상도를 가진다. 좌표 범위는 ±2³⁰의 부동소수점 수로 표현된다.

HP-GL/2

HP-GL/2는 HP-GL의 후속 규격이다. 원래 HP-GL은 플로터에 장착된 펜의 굵기에 따라 선 두께가 결정되었으나, 잉크젯 플로터의 등장으로 선 두께를 언어 내에서 직접 정의할 필요가 생겼다. HP-GL/2에서는 선 두께 정의, 바이너리 파일 형식 지원, 해상도 향상 등의 개선이 이루어졌다. HP사의 프린터는 일반적으로 PCL(Printer Command Language) 외에 HP-GL/2도 지원한다.

AGL

HP-GL은 AGL(A Graphics Language)과 관련이 있다. AGL은 BASIC 프로그래밍 언어의 확장판으로, HP 미니컴퓨터에서 플로터 제어를 단순화하기 위해 구현되었다. AGL 명령어는 컴퓨터가 여러 HP-GL 명령어로 변환하여 플로터로 전송하는 방식으로 동작한다.

미디어 타입

인터넷 미디어 타입(MIME)은 application/vnd.hp-HPGL로 등록되어 있다.

영향

HP-GL은 1970년대 후반부터 1990년대까지 거의 모든 플로터에서 사용되는 사실상의 표준이었다. Houston Instruments의 DMPL 및 Gerber 포맷과 함께 대표적인 플로터 제어 언어로 분류된다. 현재는 레거시 기술로 분류되지만, 빈티지 플로터를 현대 운영체제에서 구동하기 위한 Python 기반 제어 라이브러리(Chiplotle 등)가 개발되어 사용되고 있다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기