C语言图形编程(三、绘图函数-02)12
84. putimage() 输出图像函数
功能: 函数putimage()将一个先前保存在内存中的图像输出到屏幕上。
用法: 此函数调用方式为void putimage(int left,int top,void *buf,int ops);
说明: 参数(left,top)为输出屏幕图像的左上角,即输出图像的起始位置。buf指向要输出的内存中图像。参数ops控制图像以何种方式输出到屏幕上。表1-13给出了图像输出方式。
表1-13 图像输出方式
--------------------------------------------------------------------
输出方式符号名 取值 含 义
--------------------------------------------------------------------
COPy_PUT 0 图像输出到屏幕上,取代原有图像
xOR_PUT 1 图像和原有像素作异或运算
OR_PUT 2 图像和原有像素作或运算
AND_PUT 3 图像和原有像素作与运算
NOT_PUT 4 把求反的位图像输出到屏幕上
--------------------------------------------------------------------
1) COPy_PUT输出方式
图像中每个像素都直接绘制到屏幕上,取代原有图像像素,包括空白的图像像素(背景)。完全空白的图像可以用来擦除其它图像或屏幕的一部分。但通常选择xOR_PUT输出方式擦除原有图像。
2)xOR_PUT输出方式
原有屏幕每个像素与相应的图像字节作“异或”运算,其结果画到屏幕上。当某一图像和屏幕上原有图像作“异或”运算时,屏幕显示的是两个图像的合成。若相同的图像作异或运算,将有效地擦除该图像,留下原始屏幕。这种输出方式,对动画制作是非常有用的。
3)OR_PUT输出方式
每个图像字节和相应的屏幕像素作“或”运算,再将结果画到屏幕上,这种输出方式也叫“两者取一”。记住,像素中的每位和图像中的每位作“或”运算,这样所得结果是背景和图像的彩色合成图像。
4)AND_PUT输出方式
选择AND_PUT图像输出方式时,屏幕像素和图像字节中都显示的位,运算后仍显示,例如,星图像中的空白背景擦除了方块轮廓以及填充色,只有星图像复盖着的方块留下,即运算后,显示两者相同的图像。
5)NOT_PUT输出方式
NOT_PUT输出方式,除了把图像的每位求反---图像中所有黑的像素(0000)变成了白色(1111),其它方面与COPy_PUT相同。背景图像被重画后将消失。
putimage()函数对应的头文件为garphics.h
返回值: 无
例: 下面的程序说明了imagesize(),getimage()和putimage()函数的调用方法:
#include<graphics.h>
#include<conio.h>
#include<stdlib.h>
void box(int ,int,int,int,int);
void main()
{
int driver,mode;
unsigned size;
void *buf;
driver=DETECT;
mode=0;
initgraph(&driver,&mode,"");
box(20,20,200,200,15);
setc
C 语言图形编程(三、 绘图函数-02)12.txt 真正的好朋友并不是在一起有说不完的话题, 而是 在一起就算不说话也不会觉得尴尬。你在看别人的同时,你也是别人...
C语言图形编程(三、绘图函数-02)7_IT/计算机_专业资料。C语言图形编程fillellipse(getmaxx()/2,getaxy()/2,66,44); getaspectratio(&xasp,&yasp); ...
C语言图形编程(三、绘图函数-02)9 C语言图形编程C语言图形编程隐藏>> xHATCH_FILL 8 斜网格线填充 INTEREAVE_FILL 9 间隔点填充 WIDE_DOT_FILL 10 大间隔点...
C语言图形编程(三、绘图函数-02)10 C语言图形编程C语言图形编程隐藏>> 参数bordercolor为闭区域边界颜色,若可能的话,建议尽量用下面函数fillpoly()代替floodfill...
getfillpattern()函数对应的头文件为graphics.h 返回值: 返回用户定义填充图样的8个字节数据(注意不是填充图样元素),并存放在pattern指向的数组里。例: 显示组成当前...
C语言图形编程(三、绘图函数-02)8 C语言图形编程C语言图形编程隐藏>> 其中,x,y存放中心坐标;xstart,ystart,xend,yend分别存放起终点坐标。 值得注意的是,...
C语言图形编程(三、绘图函数-02)13 C语言图形编程C语言图形编程隐藏>> getch(); size=imagesize(20,20,200,200); if(size!=-1) { buf=malloc(size);...
C语言图形编程(三、绘图函数-02)3 C语言图形编程C语言图形编程隐藏>> SOLID_LINE 0 实线 DOTTED_LINE 1 点线 CNTER_LINE 2 中心线 DASHED_LINE 3 虚线 ...
C语言图形编程(三、绘图函数-02)5 C语言图形编程C语言图形编程隐藏>> bar(60,80,220,160); setfillstyle(SOLID-FILL,RED); bar3d(260,180,360,240,20,1...
C语言图形编程(三、绘图函数-02)4 C语言图形编程C语言图形编程隐藏>> struct linesettingstype info; getlinesettings(&info); 63.setwritemode() 设置画线模式...
热门文档