随笔分类 -  图形学

摘要:前两天想实现一个圆角图片的效果,通过网络搜索后找到一些答案。这里自己再记录一下,加深一下自己的认识和知识理解。实现圆角图片的思路是自定义一个ImageView,然后通过Ondraw()重绘的功能,将drawable和一个圆形进行重叠绘制,这样就可以达到圆角的效果了。下面开始具体实现圆角图片的过程。第... 阅读全文
posted @ 2015-01-28 15:21 雪狼的程序故事 阅读(6374) 评论(2) 推荐(2)
摘要:今天将图像缩放的双线性内插法弄完了,主要的思想如下:对于一个目的像素,通过目标图像与源图像的比值进行反向变换得到一个浮点坐标,如fx(x+u,y+v)其中为非负整数,u,v为区间[0,1]上的浮点数。则目的像素的颜色值可以由源图像的点fx(x,y)与其相邻的四个点的颜色值决定。公式为:fx(x+u,y+v)=(1-u)(1-v)fx(x,y)+(1-u)(v)fx(x,y+1) +(u)(1-v)fx(x+1,y)+uvfx(x+1,y+1);下面是我自己写的一个缩放图像的函数。void CTestView::Linear_BMP(COLORREF **DesImage,double DesW 阅读全文
posted @ 2011-09-28 19:33 雪狼的程序故事 阅读(821) 评论(0) 推荐(0)
摘要:今天老师让做一个圆柱面的表面模型,由于需要添加光照,所以需要求得每个点的法向量,但是同时由于圆柱面是可以旋转变换的所以不能单纯的用CP3(x,y,z),与CP3(0,y,0)的差获取法向量。后来想到,由于圆柱面具有前后对称性,所以,可以利用前后两个相对的顶点相差得到某个点的法向量。具体如下:上表是一个圆柱面侧面的展开图,假设我们现在将圆柱面沿着周向分为N1段,沿着高度方向分为N2,V点的两个分量分别代表高度方向和周向,则两个相对的点的坐标分别为VS(X,(Y+N1/2)%N1),VE(X,Y)。利用这两个点就可以求得VS的法向量。 阅读全文
posted @ 2011-09-10 11:43 雪狼的程序故事 阅读(1413) 评论(0) 推荐(0)