繁体   English   中英

旋转AS3动态创建的对象

[英]Rotate an AS3 Dynamically created object

我正在建立一个需要使用均衡器播放音频文件的站点。 我还不太了解AS3,所以这可能是一个简单的问题。

我找到了一个我想在此处使用Demonstrated的示例以及这里源文件

将均衡器对象添加到舞台的代码(来自教程)

package {
    import flash.media.*;
    import flash.net.*;
    import flash.display.*;
    import flash.events.*;

    import com.everydayflash.equalizer.*;
    import com.everydayflash.equalizer.color.*;

    public class Main extends Sprite{
        public function Main() {
            var s:Sound = new Sound(new URLRequest("track.mp3"));
            s.play(0, 100, new SoundTransform(1, 0));

            var es:EqualizerSettings = new EqualizerSettings();
            es.numOfBars = 32;
            es.height = 64;
            es.barSize = 2;
            es.vgrid = true;
            es.hgrid = 2;
            es.colorManager = new SolidBarColor(0xffff4444);
            es.effect = EqualizerSettings.FX_REFLECTION;

            var e:Equalizer = new Equalizer();
            e.update(es);
            e.x = 100;
            e.y = 100;
            addChild(e);

            addEventListener(Event.ENTER_FRAME, e.render);
        }
    }
}

这将创建一个垂直方向的均衡器,并具有一些不错的效果。

但是我希望它是水平的,所以我相信我需要将“ e”旋转90度。 你们中有人知道该怎么做吗? 还是方向由创建它的动作脚本专门决定?

感谢您的帮助。

在这些行的正下方:

e.x = 100;
e.y = 100;

尝试添加:

e.rotation = 90;

我相信这应该可行,但是您可能会在枢轴点的位置遇到一些问题(无论您想使其绕中心旋转还是绕左上角旋转90度)。

要记住的另一件事是DisplayObject.transform .matrix(Sprite间接扩展了DisplayObject)。 如果需要,可以使用矩阵变换进行更复杂的平移/旋转/缩放。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM