私は円で接線を見つけるためにアルゴリズムを作成して、オブジェクトと衝突したときにその円に対する反射の角度を計算できるようにしようとしています。私は、円の中心と半径のxとyの値を知っています。私はまた、他のオブジェクトとのインパクトのポイントのxとyの値を持っています。 Javaライブラリを使用して接線を計算する方法についての助けは素晴らしいでしょう。また、反射の角度を計算する方法について誰かが推奨している場合は、別の方法で評価してください。ありがとう。円上の点から接線を計算しますか?
答えて
私が理解していることから、あなたは実際に円の入射角を計算したいと思っています。このためには、円の動きの角度と、それが跳ね返っているサーフェスの角度を知る必要があります。円が衝突する角度に関係なく同じであるため、衝突のポイントは十分ではありません。この角度をお持ちの場合、円の新しい角度は(360 - circle's angle + (surface's angle * 2)) % 360
です。あなたはすでに円の動きの角度を把握しているとは思えませんが、動きのある2つの変数があるかもしれません。「更新ごとにdx
単位を右に移動し、dy
単位を上に移動してください。これを持っている場合は円の角度を度で計算することができます(180/π) * arctan(dy/dx)
。この式は、dy/dx
が平面を横切る円の動きによって作成された線の傾きを与えるために機能します。勾配をつくると、逆の接線(arctan)をとり、その角度をラジアンで与えます。最後に、180/π
部分を使ってその角度を度に変換します。
これは、サーフェスの傾斜を使用する場合にも機能します。表面がポイント(x1, y1)
で始まり、ポイント(x2, y2)
で終わるラインであるとします。表面の勾配は(y1 - y2)/(x1 - x2)
で検出されます。次に、表面の勾配を次のように置き換えて、以前のように数式を適用することができます。(180/π) * arctan((y1 - y2)/(x1 - x2))
ここではサークルとサーフェスの両方を度数で表しており、上記の最初の数式を適用できます。
ええ、ありがとう。それはまさに私が意味していたものです。表面の角度が何であるかについて少し混乱していますが、角度を計算するためにdyとdxの代わりに何が使われるのでしょうか? – John
あなたは基本的に表面の勾配を見つける必要があります。サーフェスは点 '(x1、y1)'から始まり、(x2、y2)をポイントする線であるとします。そして、 'dy = y2 - y1'と' dx = x2 - x1'となります。 – justinrstout
ありがとうございます。衝突がコーナーにある場合、衝突の時点でサーフェススロープはサークルの接線になりますか?もしそうなら、その斜面からどのようにdyとdxを得るべきですか? – John
- 1. 1つの円上の2つの接線の交点を計算しますか?
- 2. 楕円上の点を計算する
- 3. C#の角度から円の円周上の点を計算する?
- 4. 内側の円の接線に続く外側の円の上にある点を計算する方法
- 5. 円柱の頂点法線を計算する方法は?
- 6. 3Dの楕円軌道上の点を計算する
- 7. 円弧上の点の位置を計算する
- 8. 3D空間内の円上の点を計算する
- 9. Python:N次元の線から点の距離を計算する
- 10. 円上の8等分点のピクセル座標を計算します。
- 11. 接線計算OpenGL
- 12. リーフレット - 2つの正中線点から矩形座標を計算します。
- 13. セージの楕円曲線上のデカルト点
- 14. 円線交点点
- 15. 楕円の円周上の点を計算するにはどうすればよいですか?
- 16. 計算する2円の円の交点の場合
- 17. 線分上の等距離点の最大数の計算
- 18. 線分間の交点の計算
- 19. 円の円周上の点の(xまたはy)座標を計算する方法は?
- 20. 楕円曲線点
- 21. 3次元の開始点と角度から線を計算する
- 22. 売上データのファイルから平均を計算しますか?
- 23. 面積計算正接円周 - プロローグ
- 24. ピクチャボックスのビットマップ上の線のアンカー/接続点を作成しますか?
- 25. 折れ線グラフの下点と上点を接続しない
- 26. 与えられた点からの線分上で垂直線
- 27. 円内のすべてのデカルト点を計算する
- 28. GPS座標を中心とした地球上の円上の点を計算する方法は?
- 29. 円周上の点を選んで円を分割しますか?
- 30. 円の円周上の3次元点を角度で計算する方法は?
だから、接線の方程式を見つける方法を尋ねていますか? – noMAD
紙と鉛筆でどうやってやりますか? –
さて、答えはイエスだと思いますが、Javaライブラリが私のやっていることをより簡単にする方法はありますか?また、私がやっていることは、この反射角を計算する良い方法です。 – John