AlTween

  • エンジンをAlchemyを使って実装したトゥイーン・エンジンです
  • MITライセンスでお願いします

コード

コンパイル方法

  • Alchemy Projectのページを参照して、環境をセットアップしてください
  • Cのコードは以下のようにしてコンパイルします
    $ gcc alchemyTween.c -O3 -Wall -swc -o alchemyTween.swc
  • 後は、上記で作成したswcをlibrary-pathに含めて自身のコードをコンパイルしてください
    $ mxmlc -library-path+=./alchemyTween.swc --target-player=10.0.0 AlTweenTest?.as

メソッド一覧

  • fromTo(target:*, duration:Number, from:Object, to:Object, easing:int, onComplete:Function):int - 指定した位置から指定した位置までイージング
  • from(target:*, duration:Number, from:Object, easing:int, onComplete:Function):int - 指定した位置から現在地までイージング
  • to(target:*, duration:Number, to:Object, easing:int, onComplete:Function):int - 現在地から指定した位置までイージング
  • abort(id:int):void - 指定のイージングを止める

イージング一覧

  • Linear easeIn/easeOut/easeInOut
  • Back easeIn/easeOut/easeInOut
  • Bounce easeIn/easeOut/easeInOut
  • Circ easeIn/easeOut/easeInOut
  • Cubic easeIn/easeOut/easeInOut
  • Elastic easeIn/easeOut/easeInOut
  • Expo easeIn/easeOut/easeInOut
  • Quad easeIn/easeOut/easeInOut
  • Quart easeIn/easeOut/easeInOut
  • Quint easeIn/easeOut/easeInOut
  • Sine easeIn/easeOut/easeInOut

サンプルコード

package
{
    import flash.display.Sprite;

    public class MyDocumentClass extends Sprite
    {
        //イージングするオブジェクトを作成
        tgt:Sprite = new Sprite();
        tgt.graphics.beginFill(0xff0000);
        tgt.graphics.drawRect(0, 0, 10, 10);
        tgt.graphics.endFill();
        addChild(tgt);

        //AlTweenを初期化
        al:AlTween = new AlTween(4); // イージングする最大のオブジェクトプロパティ数 = 4
        
        //(10, 10) -> (100, 100)まで2秒間Linear easeInでイージング
        var id:int = al.fromTo(tgt, 2.0, {x:10, y:10}, {x:100, y:100}, AlTweenEasing.LINEAR_EASEIN); // idはイージングのJob ID
    }
}