Align instances using the circumference


ASTER::ACTION::ALIGN::the Circumference of Circle

円周状にオブジェクトインスタンスを配置する

CF25 アプリケーション実行中に、選択したオブジェクト・インスタンスの座標を整列・変更します。

選択できるオブジェクト・インスタンスの種類はスプライト ( Active ) のみに対応。


Parameter.1

オブジェクト・インスタンスを選択。コントローラにはアクティブ ( スプライト ) のみ選択可能です。

Description of the image

アクティブ以外のオブジェクトタイプを指定した場合、イベントからアクション実行時にエラーが表示され、処理を中止します。


Parameter.2

" 100, 200,  50,  50,  +10,  +10,  +0, +72, true "
index Name Data Type Detail
0 Center X int Center X pos of Circle
1 Center Y int Center Y
2 Radius 1 unsigned int Radius X ( semi-major axis )
3 Radius 2 unsigend int Radius Y ( semi-minor axis )
4 GrowRad 1 int GrowRadius Value 1
5 GrowRad 2 int GrowRadius Value 2
6 Setup ∠ int Startup Angle
7 Step ∠ int Step Angle
8 Anim Frame boolean Change Animation Frame Flag

major axis と minor axis に対応しました。

  • 楕円形に整列できる、半径は二値 ( major axis と minor axis ) が設定可能。

  • GrowRad は半径を拡大・縮小しながら配置するためのパラメータです。

Setup Angle + ( Step Angle * Instance Sequential Number ) = Angle

  • Setup angle は配置を開始するための初期角度です。

  • Step angle はインスタンスの数に応じて Setup Angle に加算される角度。



Notes

整列機能では浮動小数点数をパラメータに利用しません。以下はエラーとしてのサンプルです。

Parameter Error Sample..
"1.00"

データ型を無視してパラメータを記述することはできません。

テンプレート・パラメータは互換性があるものもありますが、基本的にパラメータの数も異なるため、動作検証無しで他テンプレートへのパラメータ流用は避けてください。

About Reserved Variables.. Read More

予約変数について

予約変数としてオブジェクト・インスタンスの変数から

  1. Alt Variable[0] = Spread ID

  2. Alt Variable[1] = Motion ID

上記を利用します。

Alt Variable[0]

連番、フレームエディタ上で一番最後に作られたオブジェクトインスタンスが 0 を割り当てられ、以降 +1 ずつ増加した値が順番に各インスタンスへ割り振られます。任意の値で上書き変更しても良い、安全。

Alt Variable[1]

モーションタイプ、0 ~ 4 までの数値、登録時のモーションタイプに応じた値が代入されます。データベース検索を高速化するためのマジックナンバー。変更するとコントローラが正常に検索できなくなります、危険。

rev.0.9.x 以降、Alt Variable[1] を利用しない方法が試行されていて、今は使ってないけれど、ただし元に戻すかもしれないので Alt Variable[1] は予約変数扱いのままでお願いします。