在闪存中倾斜位图的解决方案

时间:2009-04-21 14:23:04

标签: flash actionscript-3

我正在寻找扭曲图像的解决方案。 Flash只允许倾斜基于矢量的对象。我试图使用矩阵但无法获得适当的解决方案。我们的目标是做一个三折小册子,分两步折叠。

有人为此提供了提示或示例代码吗?


UPDATE!

也许我的信息有点错误。 Flash允许将例如矩形倾斜为菱形。

 -------         -------
|       |        \      \
|       |   =>    \      \
|       |          \      \
 -------            -------

这不是我的意思。我可以为矢量和位图做这样的WYSIWYG偏移。我需要做这样的事情:

 -------         |`
|       |        |  `|
|       |   =>   |   |
|       |        |  ´
 -------         |´

根据Bryan Grezeszak的回答,我在链接页面上玩转换动画片段。当我说没有可能用矩阵做这个时,我是对的吗?如果是,是否有其他可能实现这一目标?

谢谢=)

4 个答案:

答案 0 :(得分:5)

基于您的更新进行编辑:您指定的转换正是Flash3中Matrix3D所完成的转换。它们将其从3x3矩阵更改为4x4矩阵,以允许您尝试进行的偏移。如果您使用的是Flash 10,Matrix3D就是您的答案。如果没有,请尝试使用Papervision或Away3D等AS3 3D引擎。

如果您使用的是Flash 10,那么请查看它的Matrix3D对象(仅限Flash 10),因为它允许对象的更多偏斜,实际的3D透视等,这正是您正在寻找的内容:)

除此之外,对象的变换矩阵就是它的作用。它是一个flash.geom.Matrix对象,可以使用your_object.transform.matrix在任何DisplayObject(包括位图)上访问;

习惯这可能很棘手,但这是我所知道的处理它的最全面的来源:Senocular Matrix Article

该文章适用于Flash 8,但功能几乎没有变为AS3,因此它仍然是一个宝贵的资源。

答案 1 :(得分:2)

可惜这一年没有出现在日期......希望它是2009年

答案就在这里 http://evolve.reintroducing.com/2007/11/18/as3/as3-distortiontweener/

;-) nobull

答案 2 :(得分:1)

答案 3 :(得分:-1)

您可以在Flash IDE的时间轴上扭曲任何动画片段,即使是包含位图图像的动画片段,但也没有偏斜属性。对于更动态的东西,您可以创建一个动画片段,其中包含200个(例如)动画帧,从一个极端偏斜到另一个极端,然后动态地将内容添加到此动画片段。哈基,但它会奏效。如果您可以掌握数学,则可以在Flash Player 10中使用矩阵变换来实现此效果。