2

私はボールをアニメーション化するためにラファエルを使用しており、アニメーションを停止した後に位置を見つける必要があります.ここに私が持っているコードがあります:

ball.stop();
console.log(ball.attrs.transform);
// t399.6625490203161,180r180

この文字列をボールの x、y 位置に変換するにはどうすればよいですか?

4

1 に答える 1

5

これに使用できますElement.getBBox

var x = ball.getBBox().x;
var y = ball.getBBox().y;
var r = ball.getBBox().height / 2;
console.log(x, y, r);

しかし、注意してください

座標(element.getBBox().xelement.getBBox().y)は、バウンディングボックスの左上隅を参照します。
ボールが円の場合、その点は円に含まれていません。中心の座標を使用する方が賢明な場合があります。

バウンディングボックスを考えると、bboxそれらには

var x = bbox.x + bbox.width / 2,
    y = bbox.y + bbox.height / 2;
于 2012-08-06T07:42:09.270 に答える