BasicCreator

BasicCreator オブジェクトは、腕の動きの軌道と道具ごとの投げ方データから、腕や道具の状態一覧を作成します。名前に Basic(基本的な)と付いているのは、腕は2本固定で、「キャッチしてから投げるまで」と「投げてからキャッチするまで」の動きが交互に並び、それらの時間が等しいといった特徴があるからです。

コンストラクタ

BasicCreator()
新しい BasicCreator オブジェクトを生成します。

プロパティ

BasicCreator.prototype.offset
道具をキャッチした状態での手の平の座標に対する道具の相対座標です。
プロパティとして right と left があり、right は右手にキャッチしたときの相対座標、left は左手にキャッチしたときの相対座標です。
right = (0, -10)
デフォルトでは right, left ともに (0, -10) となっています。
BasicCreator.prototype.paths
各関節の軌道の配列の配列です。
プロパティとして right と left があり、right は右手の軌道の配列の配列、left は左手の軌道の配列の配列です。軌道は SVGPathElement オブジェクト(<path> タグ)ですが、transform 属性は効果がないので transform を付けない形で指定してください。
elbow hand
内側の配列には1本の腕が道具を「キャッチしてから投げるまで」または「投げてからキャッチするまで」の全ての関節の軌道を置きます。外側の配列ではそれらを交互に必要な個数だけ配置します。通常は1つの軌道の終了座標と、それに続く軌道の開始座標は等しくなります。
[
    [ hand0, elbow0, ... ],
    [ hand1, elbow1, ... ],
    ...
]
デフォルトでは right, left ともに「キャッチしてから投げるまで」として楕円の下半分、「投げてからキャッチするまで」として楕円の上半分を描きます。いずれも手の平と肘の2つの軌道があります。
自分で設定する場合、関節は手の平から肩に向かう順番になるようにしてください。

メソッド

BasicCreator.prototype.calculateOrbits()
投げ方データに基づいて左右の腕の動きや道具の軌道を計算します。
BasicCreator.prototype.getScale()
画像に使用すべき画面縮尺を取得します。
BasicCreator.prototype.getWidth()
画像に使用すべき線の太さを取得します。