分类分类
关注+2004-10-15作者:蓝点
制作方法如下:
所需的素材:
一张没有刮胡子的照片位图,和一张同一个人刮完胡子的照片位图。(为了版权问题,我将脸部部分去掉,保留胡须部分的位图图案。)见图如下:
图形 1 face.jpg | 图形 2 faceoff.jpg |
接着我们开始介绍程序部分,这段程序非常的短小,核心部分的代码总共 6 行。然是为了理解这六行代码,你需要了解 director 8 新增加的 image lingo 的一个核心函数,这就是 copyPixels
copyPixels 的功能就是将位图数据从一个 image 复制到另一个 image。
现在任何一个 director 角色(member)都有一个 image 的属性,这是很多人忽略的地方。这个 image属性是内存中的一个图形对象的引用,而这个图形对象是角色成员的一个图形表示。角色成员可以是 位图,flash 角色,文字角色,甚至是舞台 stage. 我把刚刚导入的两个位图角色起名为 source (刮完胡子的照片位图 face.jpg)和 targer (未刮完胡子的照片位图 faceoff.jpg)
在 director 中角色分布图如下:
control + M 打开 director 中的消息窗口,输入
put member("source").image
n
而 image 属性是对实际数据的一个引用。而 image 图形对象是角色成员在内存中的实际数据。
任何对 image 对象的改动都是对 cast 中相应的原始角色的改动。这一点要注意,除非 image 对象是你自己创建的而且和角色成员不相关联,否则必须注意不要意外改动的原始角色成员。
你可以调用 image() 函数来创建自己的对象。实例如下:
image (width, height, bitdepth)
thisImage = image (320,240,16)
你现在创建了一个宽为 320 pixel 高为 240 pixel ,位深为 16 bit 图形对象。
你可以用 copyPixels 函数来给图形对象添加数据。该函数的格式如下(这是本程序的关键):
targetImage.copyPixels(sourceImage, destinationRect, sourceRect,
该函数功能是通过目标图形对象调用 copyPixels 函数,将 源图形对象,从源图形对象的矩形区域 sourceRect 复制到 目标图形对象的矩形区域destinationRect
相关文章
更多+相同厂商
热门推荐
点击查看更多
点击查看更多
点击查看更多
说两句网友评论