私は別のオブジェクトを囲むようにオブジェクトを取得しようとしています。それほど難しくないと思った。しかし、それはあなたがこのコードを実行すると、それが表示されますJS、円の後のオブジェクト
var dx = this.x - this.parent.x,
dy = this.y - this.parent.y,
r = Math.atan2(dy, dx);
this.x = Math.sin(r) * this.speed + this.x;
this.y = (Math.cos(r) * this.speed * -1) + this.y;
...スパイラルです...私はおそらく間違った式を使用していますが、私は、私が代わりに取るべきかわからないですサークルが判明します働く各フレームは、オブジェクトが親オブジェクトの周りを円弧状に移動します。
しかし、アークはますます大きくなり、距離がますます大きくなります。
私は間違いをしていますか?
これは、私が基本的に行ったすべての変更が悪化した理由を説明しています...コードは正解でしたが、あらかじめ十分なものではありません...あなたの変数はどのように私のものと一致しますか? aは度での角度です、と思いますか? rは半径、daは速度です。 – Johan
この種の反復計算では、数学的には正確な精度が得られません。 –
は、角度をラジアンで表し、rを半径とし、daを角速度とする。 –