VGL(3)

명칭
vgl - 비디오 그래픽스 프로그램 라이브러리 함수

서식
#include <vgl.h>

해설
Libvgl 는, 콘솔 드라이버 (syscons)에 의해 서포트되고 있다 그래픽스 모드에 프로그래머가 액세스 할 수 있도록(듯이) 하는 프로그램 라이브러리입니다. 이 프로그램 라이브러리는 실제의 비디오 하드웨어의 프로그래밍을 실시해, 여러가지 그래픽스 조작을 행하기 위한 몇개의 간단한 기능을 제공합니다. 또, FreeBSD 에 있어서의 표준 마우스 시스템에 의한 마우스 기능 ( moused() 참조 )도 서포트하고 있어, 이것에는 현재 작업중의 그래픽스 이미지에 마우스 포인터를 트랜스페어렌트에 거듭해 대면시키는 기능도 포함되어 있습니다. 이 프로그램 라이브러리는, 다른 가상 콘솔로 전환하기 전에 현재의 이미지를 메모리에 보존해, 유저가 변환을 바탕으로 되돌렸을 때에 그것을 복원하는 것에 의해 화면 변환을 실시합니다. 이것에 의해, 복수의 그래픽스 어플리케이션 (을)를 다른 가상 콘솔 위에서 동시에 사용할 수가 있습니다. 여러가지 기능을, 이하에 간단하게 설명합니다：

저자
Sen Schmidt <sos@FreeBSD.org>

함수
int VGLInit(int mode) 프로그램 라이브러리를 초기화해, 그래픽 모드 mode (을)를 설정합니다. void VGLEnd(void) 그래픽 모드를 종료해, VGLInit() 하지만 불려 가기 전에 액티브했던 화면 모드를 복원합니다. void VGLCheckSwitch(void) 그래픽스의 출력이 없는 채에 프로그램의 처리 시간이 길어졌다 경우에, 이 함수를 호출하면(자) 시스템이 화면을 바꿀 수가 있다 경우가 있습니다. int VGLTextSetFontFile(char *filename) char/string 함수에, 편입 폰트대신에 파일 filename 에 들어가 있는 폰트를 사용하도록(듯이) 지시합니다. int VGLMouseInit(int mode) 마우스를 초기화합니다. 인수가 VGL_MOUSESHOW 인 경우는, 옵션의 화면상 마우스 포인터를 표시합니다. void VGLMouseMode(int mode) 인수가 VGL_MOUSESHOW 인 경우는 마우스 포인터를 표시해, 인수가 VGL_MOUSEHIDE 인 경우는 마우스 포인터를 비표시로 합니다. int VGLMouseStatus(int *x, int *y, char *buttons) 현재의 마우스 포인터의 좌표 및 버튼 상태를 x, y , buttons 그리고 돌려줍니다. 반환값은, 마우스 포인터가 현재 화면에 표시되고 있을까 않은가를 반영합니다. void VGLMouseSetImage(VGLBitmap *AndMask, VGLBitmap *OrMask) 이 함수를 사용하면, 화면상의 마우스 포인터의 이미지를 바꿀 수가 있습니다. void VGLMouseSetStdImage(void) 이 함수는, 마우스 포인터를 표준의 화살표에 되돌립니다. void VGLLine(VGLBitmap *object, int x1, int y1, int x2, int y2, byte color) 좌표 x1, y1 (으)로부터 좌표 x2, y2 에 색이 color 의 직선을 긋습니다. void VGLBox(VGLBitmap *object, int x1, int y1, int x2, int y2, byte color) 좌상구석의 좌표 x1, y1 , 우하구석의 좌표 x2, y2 의 사각형을 색 color 의 선으로 그립니다. void VGLFilledBox(VGLBitmap *object, int x1, int y1, int x2, int y2, byte color) 좌상구석의 좌표 x1, y1 , 우하구석의 좌표 x2, y2 의 발라 짓이김 사각형을 색 color 그리고 그립니다. void VGLEllipse(VGLBitmap *object, int xc, int yc, int a, int b, byte color) 중심이 xc, yc (이어)여, 폭 a 픽셀, 높이 b 픽셀의 타원을 색 color 의 선으로 그립니다. void VGLFilledEllipse(VGLBitmap *object, int xc, int yc, int a, int b) "byte color" 중심이 xc, yc (이어)여, 폭 a 픽셀, 높이 b 픽셀의 발라 짓이김 타원을 색 color 그리고 그립니다. int VGLBitmapCopy(VGLBitmap *src, int srcx, int srcy, VGLBitmap *dst, int) dstx" "int dsty" "int width" "int hight" 사이즈가 width, height 인 직사각형의 픽셀을, 비트 맵 src 의 좌상구석 ( srcx, srcy )(으)로부터 비트 맵 dst 의 좌표 ( dstx, dsty )에 카피합니다. void VGLBitmapPutChar(VGLBitmap *Object, int x, int y, byte ch, byte fgcol, byte bgcol, int fill, int dir) 캐릭터 ch (을)를 위치 x, y 에 foreground색 fgcol 그리고 기입합니다. fill 하지만 ! = 0 인 경우는 백그라운드색에 색 bgcol (을)를 사용해, 그 이외의 경우는 백그라운드는 투명하게 됩니다. 캐릭터는 인수 dir 에 의해 지정될 방향으로 그려집니다. void VGLBitmapString(VGLBitmap *Object, int x, int y, char *str, byte fgcol, byte bgcol, int fill, int dir) 캐릭터 라인 str (을)를 위치 x, y 에 색 fgcol 그리고 기입합니다. fill 하지만 ! = 0 인 경우는 백그라운드색에 색 bgcol (을)를 사용해, 그 이외의 경우는 백그라운드 (은)는 투명하게 됩니다. 캐릭터 라인은 인수 dir 에 의해 지정될 방향으로 그려집니다. void VGLClear(VGLBitmap *object, byte color) 비트 맵의 전체를 색 color 에 바꿔바릅니다. void VGLSetPalette(byte *red, byte *green, byte *blue) 이 함수는 사용하는 팔레트를 설정하는 것으로, 인수 red, greenm, blue (은)는 각각 256 위치의 바이트 배열을 가리키는 것이 아니면 안됩니다. void VGLSetPaletteIndex(byte color, byte red, byte green, byte blue) 팔레트 인덱스 color (을)를, 지정된 RGB 치로 설정합니다. void VGLSetBorder(byte color) 경계색을 색 color (으)로 설정합니다. void VGLBlankDisplay(int blank) 인수 blank 하지만 ! = 0 인 경우는, 디스플레이를 공백 표시로 합니다. 이것은, 표시 갱신동안에 화면을 닫아, 처리가 끝났을 때에 처음으로 유저가 화면을 볼 수 있도록(듯이) 하기 위해서 사용할 수 있습니다.

역사
vgl 프로그램 라이브러리는 FreeBSD 3.0 에 나타났습니다.