请输入您要查询的百科知识:

 

词条 blkget
释义

BLKGET

DOS SVGACC图形开发库函数

原型: extern int far blkget (int x1, int y1, int x2, int y2,RasterBlock far *gfxblk)

输入: X1,Y1-块的左上角

X2,Y2-块的右下角

输出: 成功是返回1,否则返回0

gfxblk-检索到的位图数据

用法: BKGET将由(X1, Y1)-(X2, Y2)定义的块内的数据存储到gfxblk引用的变量中。gfxblk必须为RasterBlock结构加上四个字节分配内存,其中,RasterBlock结构的大小为[(X2-X1+1)*(Y2-Y1+1)]个字节;四个字节分别是该结构宽和高的整型值。

然而还需要注意的是gfxblk可以相当大。如果gfxblk的大小不足的话,BLKGET会在超出gfxblk的空间填写数据并且由此可能导致系统崩溃。BLKGET会强制执行X2,X1和Y2,Y1。还有指定的坐标必须在当前的分辨率下是有效的。

例子

/*

* Places 1/4 of a circle at the center of the screen

*/

#include <stdlib.h>

#include <conio.h>

#include "svgacc.h"

void main(void)

{

int vmode;

int a,b,c,d;

RasterBlock *blkdata;

vmode = videomodeget();

if ( !whichvga() || (whichmem() < 512))

exit(1);

res640();

drwcircle(1,10,30,30,20);

fillarea(30,30,10,7);

a = b = 0;

c = d = 30;

blkdata = (RasterBlock *)malloc((c-a+1)*(d-b+1)+4);

blkget(a,b,c,d,blkdata);

blkput(1,320,240,blkdata);

getch();

videomodeset(vmode);

exit(0);

}

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/1/27 20:10:16