我正在寻找扭曲图像的解决方案。 Flash只允许倾斜基于矢量的对象。我试图使用矩阵但无法获得适当的解决方案。我们的目标是做一个三折小册子,分两步折叠。
有人为此提供了提示或示例代码吗?
UPDATE!
也许我的信息有点错误。 Flash允许将例如矩形倾斜为菱形。
------- -------
| | \ \
| | => \ \
| | \ \
------- -------
这不是我的意思。我可以为矢量和位图做这样的WYSIWYG偏移。我需要做这样的事情:
------- |`
| | | `|
| | => | |
| | | ´
------- |´
根据Bryan Grezeszak的回答,我在链接页面上玩转换动画片段。当我说没有可能用矩阵做这个时,我是对的吗?如果是,是否有其他可能实现这一目标?
谢谢=)
答案 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)
;-) nobull
答案 2 :(得分:1)
答案 3 :(得分:-1)
您可以在Flash IDE的时间轴上扭曲任何动画片段,即使是包含位图图像的动画片段,但也没有偏斜属性。对于更动态的东西,您可以创建一个动画片段,其中包含200个(例如)动画帧,从一个极端偏斜到另一个极端,然后动态地将内容添加到此动画片段。哈基,但它会奏效。如果您可以掌握数学,则可以在Flash Player 10中使用矩阵变换来实现此效果。