当前位置:首页 > 代码 > 正文

马赛克代码(马赛克代码是什么)

admin 发布:2022-12-19 18:41 151


本篇文章给大家谈谈马赛克代码,以及马赛克代码是什么对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

求VC++把图片变成马赛克效果代码

这是老师给的高大上的东西:

void SpecialEffectShow::Mosaik(CDC *pDC)

{

int bitmapWidth=GetDimensions().cx;//获得源图象的宽度,以象素为单位

int bitmapHeight=GetDimensions().cy;//获得源图象的高度,以象素为单位

CRect rect(0,0,bitmapWidth,bitmapHeight);//以源图象的尺寸创建一个矩形

CBrush brush(RGB(255,255,255)); //设置画刷为白色

pDC-FillRect(rect,brush);//将已经显示出来的原图象重新设置成白色,达到刷新屏幕的效果

LPBITMAPINFO pBitmapInfo=(BITMAPINFO*)m_lpBmpInfoHead;

//为适应StretchDIBits函数的需要,将图像信息头指针强制转换为LPBITMAPINFO类型

//马赛克的大小设置为宽高都是12个像素

int WithFalg=0; //图象宽是12的整数倍的标志

int HeightFlag=0;//图象高是12的整数倍的标志

if((bitmapWidth%12)!=0)WithFalg=1;

if((bitmapHeight%12)!=0)HeightFlag=1;

long ArrayLength=(bitmapWidth/6+WithFalg)*(bitmapHeight/6+HeightFlag);

//将图象宽高都延拓至12的整数倍,然后将图象分成12X12的小块,按行顺序排列成一个数组

struct Square

{

CPoint pt;//记录每个12X12的小块的左上角坐标

bool HitFlag;//当随机扫描所有小块的时候,记录是否曾经被扫描过

};//自己定义一个结构,由一个Cpoint类型和一个击中标志构成

Square* SquareArray=new Square[ArrayLength];

int x=0;

int y=0;

for(int i=0; iArrayLength; i++)

{

//初始化每个小块的坐标点

SquareArray[i].pt.x=x;

SquareArray[i].pt.y=y;

x=x+12;

if(xbitmapWidth)

{x=0;y=y+12;}

//初始所有小块都未被击中过

SquareArray[i].HitFlag=FALSE;

}

long RandNum;//随即变量

srand( (unsigned)time( NULL ) );//生成随机种子

for(i=0;i=ArrayLength;i++)

{

do

{

RandNum=(long)( ( (double)ArrayLength )*rand()/RAND_MAX );//随机变量在0到ArrayLength-1之间取值

x=SquareArray[RandNum].pt.x;

y=SquareArray[RandNum].pt.y;

}while(SquareArray[RandNum].HitFlag==TRUE);//检查小块以前是否被击中过,如果是,重新计算一个随机数

SquareArray[RandNum].HitFlag=TRUE;//设置击中标志

::StretchDIBits(pDC-GetSafeHdc(),

x, y, 12,12,

x,bitmapHeight-y-12, 12,12,

m_pImgData, pBitmapInfo,DIB_RGB_COLORS, SRCCOPY);

Sleep(1);//设置延时时间

}

delete [] SquareArray;

}

马赛克软件怎么制作的,或者图片的代码怎么写

图片处理软件都有打马赛克功能,以ps为例打开图片~用选框工具选定要打马赛克区域;滤镜~像素化~马赛克,完成。

DNF大神 求代码啊,这是个类似马赛克的代码

速度 时装(透明天空)2660851 男神枪手透明天空2660852 女格斗2660853 鬼剑2660854 男格斗2660855 男魔法师2660856 暗夜使者2660857 女魔法师2660858 女神枪手2660859 圣职者冥域天空(天空2)10000484 鬼剑士10000485 格斗家10000486 圣职者10000487 男神枪手10000488 女魔法师苍穹之翼(天空4)10000433 鬼剑士(金红)10000434 格斗家(金红)10000435 神枪手(金红)10000436 女魔法师(金红)10000437 圣职者(金红)10000438 女神枪手(金红)10000439 暗夜使者(白金)10000440 男格斗家(白金)10000441 男魔法师(白金)10000442 鬼剑士(白金)战灵天舞(天空5)921 鬼剑士(蓝黑)922 格斗家(红黑)923 神枪手(紫黑)924 女魔法师(粉白)925 圣职者(黑白)926 女神枪手(黑白)927 暗夜使者(黑)冥光天羽(天空6)10000467 鬼剑士(黑)10000468 鬼剑士(白)10000469 格斗家(黑)10000470 格斗家(白)10000472 男神枪手(白)10000483 男神枪手(黑)10000473 女魔法师(黑)10000474 女魔法师(白)10000475 圣职者(黑)10000476 圣职者(白)10000476 女神枪手(黑)10000477 女神枪手(白)10000479 暗夜使者(黑)10000480 暗夜使者(白)10000481 男格斗家(黑)10000482 男格斗家(白)

关于马赛克代码和马赛克代码是什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/18073.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载