Software 版 (精华区)

发信人: checcy (老巴夺), 信区: Software
标  题: 使用抖动技术为程序增色
发信站: 哈工大紫丁香 (Wed Apr  8 03:06:58 1998), 转信

                使用抖动技术为程序增色



□江苏 黄 寅

标准VGA在640×480的模式下同屏只能显示16种颜色,如果要显示更多
种颜色,只有针对不同的硬件来编程。然而,应用抖动技术,却可以
在标准VGA下同屏显示128种颜色。

所谓抖动技术,其实就是混色处理,用任意两种颜色相互间隔地填充
一个区域。由于像素与像素间的距离很小,利用眼睛视觉上的的错
觉,就会形成第三种颜色的效果。为了更进一步地说明问题,笔者用
Turbo C2.0开发了一个MixcolorC,源程序如下:

# include″graphics.h″


void mixcolor(int x1,int y1,int x2,int y2,int color1,int color2)


  {int i,j,z=0;


   for(i=y1;i<=y2;i++)


     {for (j=x1+z;j<=x2;j+=2) putpixel(j,i,color1);


      z=1-z;


     }


   z=1;


   for(i=y1;i<=y2;i++)


     {for (j=x1+z;j<=x2;j+=2) putpixel(j,i,color2);


      z=1-z;


   }


}


void main()


{


  int driver=VGA,mode=DETECT;


  int i,j;




  initgraph(&driver,&mode,″c:\\turboc3″);


  for (i=0;i<16;i++)


      for (j=0;j<16;j++)


         mixcolor(i40,j30,j40+32,j30+24,i,j);


  getch();


  closegraph();


}



[LM]

-- 
*********************************
Chengyan Che - Software Freelancer
Harbin, P.R.China
mailto: checcy@public.hr.hl.cn
ICQ: 5116726

--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: checcy@public.hr.hl.]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.096毫秒