1

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

我找到了一个我想在此处使用演示的示例和此处的源文件

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

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 度。你们中有人知道怎么做吗?或者方向是否完全由创建它的动作脚本决定?

感谢您提供的任何帮助。

4

2 回答 2

4

就在行的正下方:

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

尝试添加:

e.rotation = 90;

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

于 2009-01-28T23:08:10.693 回答
1

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

于 2009-01-29T16:28:19.933 回答