ドローイングとアニメーションコンポーネント
目次
ボール
キャンバス上に配置してタッチやドラッグに反応したり、他のスプライト( 画像スプライトや他のボール )やキャンバスの端と相互作用したり、そのプロパティ値に従って移動したりできる円形の「スプライト」
たとえば、 ボールが500ミリ秒(1/2秒)ごとにの上に4ピクセル移動するようにするには、 キャンバススピードプロパティを4に、 プロパティを500に、 インターバルプロパティを90に設定します。 [度]、および進行方向プロパティを有効Trueます。 これらおよびその他のプロパティはいつでも変更できます
ボールと画像スプライトの違いは、画像スプライトが画像ファイルから外観を取得できるのに対し、ボールの外観はペイントカラーと半径プロパティを変更することでしか変更できないことです
プロパティ
有効: 速度がゼロ以外のときに移動するかどうかを制御します
進行方向: 正のx軸より上の角度でスプライトの方向を返します。 ゼロ度は画面の右側に向いています。 90度は画面の上を向いています
インターバル: スプライトの位置が更新される間隔(ミリ秒)。 たとえば、インターバルが50でスピードが10の場合、スプライトは50ミリ秒ごとに10ピクセル移動します
原点センター: x 座標と y 座標が Ball の中心を表すか(真)、左端と上端を表すか(偽)
ペイントカラー: 色
半径: 半径
スピード: ボールの移動速度。有効が真の場合、画像スプライトはインターバルミリ秒ごとにこのピクセル数だけ移動します
目に見える: 画面に表示するかどうかを指定します
X: ボールの水平座標で、ボールが右に移動するにつれて増加します。原点センタープロパティが真の場合、この座標はボールの中心を表し、そうでない場合はボールの左端を表します
Y: ボールの垂直座標で、ボールが下に移動するにつれて増加します。原点センタープロパティが真の場合、この座標はボールの中心を表し、そうでない場合はボールの上端を表します
Z: ボールは他のボールやイメージスプライトに対してどのようにレイヤー化されるべきか。大きな数字だと手前になります
イベント
衝突したら(相手): 2つのボールまたはスプライトが衝突したときに呼び出されます。 回転された画像スプライトとの衝突をチェックすることは現在スプライトの回転していない位置に対してチェックすることに注意してください。 したがって、衝突チェックは、回転している幅の狭い、または幅の広いスプライトでは不正確になります
ドラッグされたら(開始X, Y, 開始前のX, Y,前の現在のX, 現在のY): “ドラッグされたら"イベントのハンドラ。 すべての呼び出しで、開始座標は画面が最初にタッチされた場所であり、「現在の」座標は現在の線分の終点を表します。 特定のドラッグ内での最初の呼び出しでは、「前の」座標は開始座標と同じです。 その後、それらは前の呼び出しからの「現在の」座標です。 “ポイントへ移動"が特に呼び出されない限り、ボールは"ドラッグされたら"イベントに応じて実際にはどこにも移動しません
端に到達したら(: 画面の端に達すると呼び出されるイベントハンドラ。 その後、その端)で"バウンドする"が呼び出されると、到達した端からバウンドするように見えます。 ここでの端は、北(1)、北東(2)、東(3)、南東(4)、南(-1)、南西(-2)、西(-3)、北西(-4)の8つの方向のいずれかを示す整数として表されます端
フリックされたら(x, y, スピード, 方向, x方向速度, y: ボール上でフリックジェスチャ(クイックスワイプ)が行われたとき:キャンバスの左上を基準とした開始位置の(x、y)位置を提供します。 速度(ミリ秒あたりのピクセル数)と進行方向(-180〜180度)、およびフリックのベクトルのx速度成分とy速度成分も表示されます方向速度)
もう衝突していなければ(相手): 一対のボールが衝突しなくなったことを示すイベント
タッチダウン(x, y): ユーザーがボールに触れ始めたとき(ボールに指を置いたままにしたとき):キャンバスの左上を基準にした、タッチの(x、y)位置を提供します
タッチアップ(: ユーザーがボールに触れなくなったとき(x, y)タッチダウンイベントの後に指を離したとき):キャンバスの左上を基準にした、タッチの(x、y)位置を提供します
タッチしてすぐ離したら(: ユーザーがボールをタッチしてすぐに指を離すと、キャンバスの左上を基準にしたタッチの(x、y)位置が表示されますx, y)
メソッド
バウンドする(端): まるで壁から離れたようにバウンドさせます。 通常のバウンドのために、端引数は"端に到達したら“によって返されるものであるべきです
衝突する(: このボールと渡されたスプライトの間に衝突が登録されているかどうかを示します相手)
境界内に移動(): スプライトの一部が範囲外に広がっている場合はスプライトを範囲内に戻します。それ以外の場合は効果がありません。 スプライトが広すぎてキャンバスに収まらない場合は、スプライトの左側とキャンバスの左側が揃います。 スプライトの高さが高すぎてキャンバスに収まらない場合は、スプライトの上面とキャンバスの上面を揃えます
移動先(x, y): ボールのx座標とy座標を設定します。原点センターが真の場合、ボールの中心がここに配置されます。そうでない場合は、ボールの左上端が指定した座標に配置されます
ポイントへ移動(座標): ボールの原点が指定した x 座標と y 座標になるように移動します
座標の方向に向ける(x, y): このボールを座標(x, y)の点に向ける
Point Towards(ターゲット): ボールを指定したスプライトの方向に向けます。新しい方向は、2つのスプライトの原点を結ぶ線に平行になります