我非常喜欢动作脚本,但我的动画片有问题。
我有4个坐标需要适合他们的影片剪辑,因此影片剪辑的每个角落都在一个坐标上。
我唯一能找到它用矩阵和角度转换它(参见示例),但这些不能是我的问题计算所有角度等的最佳解决方案。
var degX:Number = 0;
var degY:Number = 0.3;
//Get the transform matrix for the object to skew
var m:Matrix = bild.transform.matrix;
m.b = Math.tan(degY *(Math.PI/180));
m.c = Math.tan(degX *(Math.PI/180));
//Apply the matrix to the transform object
var t:Transform = new Transform(bild);
t.matrix = m;
//Apply the skew
bild.transform = t;
我希望你能理解我的问题并知道解决方案。
我已经尝试过distord图像,因为它似乎做了exaclty它需要什么,但我不能得到它所以显示我的形象。坐标工作,如果我对注释部分发表评论,我会看到白色重新划分它们应该在哪里,但它们不会在更新时被删除,我希望你能帮助我。这是我的代码:
var PointUR:Point = new Point();
PointUR.x = values1[0];
PointUR.y = values1[1];
var PointUL:Point = new Point();
PointUL.x = values2[0];
PointUL.y = values2[1];
var PointBR:Point = new Point();
PointBR.x = values3[0];
PointBR.y = values3[1];
var PointBL:Point = new Point();
PointBL.x = values4[0];
PointBL.y = values4[1];
[Embed(source='MyImage.jpg')]
var MyImage:Class;
var shape:Shape = new Shape();
var bitmap:Bitmap = new MyImage();
var showGrid:Boolean = true;
var myColorTransform = new ColorTransform();
/*myColorTransform.color = 0xFFFFFF;
shape.transform.colorTransform = myColorTransform;
shape.graphics.beginFill(0x000000,1);
addChild(shape);*/
var distortion:DistortImage = new DistortImage(267, 400, 3, 3);
if (showGrid){
shape.graphics.lineStyle(1, 0x00FF00);
}
distortion.setTransform(shape.graphics,
bitmap.bitmapData,
PointUR,
PointUL,
PointBR,
PointBL);