乌鲁木齐动画制作设计公司

flash制作中的draw()的使用

时间:2013-05-31  文章关键词:flash动画制作

 

draw(source:Object, [matrix:Matrix], [colorTransform:ColorTransform], [blendMode:Object], [clipRect:Rectangle], [smooth:Boolean]) : Void

source:Object - 要绘制的 BitmapData 对象。

matrix:flash.geom.Matrix [可选] - 一个 Matrix 对象,用于缩放、旋转或转换位图的坐标。如果没有提供任何对象,位图图像将不转换。如果您必须传递此参数但又不希望转换图像,则可以将此参数设置为使用默认 new Matrix() 构造函数创建的恒等矩阵。

colorTransform:flash.geom.ColorTransform [可选] - 一个 ColorTransform 对象,用于调整位图的颜色值。如果没有提供任何对象,位图图像的颜色将不转换。如果您必须传递此参数但又不希望转换图像,则可以将此参数设置为使用默认 new ColorTransform() 构造函数创建的 ColorTransform 对象。

blendMode:Object [可选] - 一个 BlendMode 对象。

clipRect:flash.geom.Rectangle [可选] 一个 Rectangle 对象。如果您未提供此值,将不发生任何剪裁。

smooth:Boolean [可选] - 布尔值,确定缩放时是否要对 BitmapData 对象进行平滑处理。默认值为 false

实例说明:

下面的示例演示如何将源 MovieClip 实例绘制为 BitmapData 对象。

import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Matrix;
import flash.geom.ColorTransform;

var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);

var mc_1:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_1.attachBitmap(myBitmapData, this.getNextHighestDepth());

var mc_2:MovieClip = createRectangle(50, 40, 0xFF0000);
mc_2._x = 101;

var myMatrix:Matrix = new Matrix();
myMatrix.rotate(Math.PI/2);

var translateMatrix:Matrix = new Matrix();
translateMatrix.translate(70, 15);

myMatrix.concat(translateMatrix);

var myColorTransform:ColorTransform = new ColorTransform(0, 0, 1, 1, 0, 0, 255, 0);
var blendMode:String = "normal";

var myRectangle:Rectangle = new Rectangle(0, 0, 100, 80);
var smooth:Boolean = true;

mc_1.onPress = function() {
    myBitmapData.draw(mc_2, myMatrix, myColorTransform, blendMode, myRectangle, smooth);
}

function createRectangle(width:Number, height:Number, color:Number):MovieClip {
    var depth:Number = this.getNextHighestDepth();
    var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
    mc.beginFill(color);
    mc.lineTo(0, height);
    mc.lineTo(width, height);
    mc.lineTo(width, 0);
    mc.lineTo(0, 0);
    return mc;
}
新疆乌鲁木齐flash动画制作






随机文章

相关作品

动画制作| 团队介绍| 案例展示| 服务项目| 行业新闻| 联系我们| flash应用| 技术知识| 业务信息|
新疆零点flash工作室主要承接乌鲁木齐flash动画,公交广告动画,政府宣传动画,公益宣传动画,商业宣传动画,房地产动画,工业动画,三维动画制作等相关业务。
新疆flash动画制作 乌鲁木齐flash动画制作 乌鲁木齐三维动画制作 乌鲁木齐mg动画制作   联系电话:15276650802   业务QQ:1196393407