この図の赤い曲線((0,0)から(2.5,-25))の半径はいくつになりますか?
あるいはこの情報(x移動量とy移動量)から半径を求める式がわかればそれもお願いします。
BVEという電車運転ゲームの線形のデータに使います。
これだけでは求められないみたいなのですが言葉で説明できないので該当のデータを載せます。
分岐器です。
14900;
Curve.BeginCircular($R,0);
Track['Tr2'].Position(0,0,-$R,0);
Track['Tr1'].Position(10,0,-$R,0);
Track['Tr3'].Position(10,0,-1/(2/$R),0);
JointNoise.Play(0);
14925;
Curve.BeginCircular(-$R,0);
Track['Tr2'].Position(-2.5,0,$R,0);
Track['Tr1'].Position(7.5,0,$R,0);
Track['Tr3'].Position(5,0,1/(2/$R),0);
14950;
Curve.End();
Track['Tr2'].Position(-5,0,0,0);
Track['Tr1'].Position(5,0,0,0);
Track['Tr3'].Position(0,0,0,0);
画像の新しいもの
若干いびつですみません。
曲線半径という言葉は知らなかったのですが、調べてみたら数学で出てくる曲率半径と同じ概念のようなので、それを求めればいいのだと思います。
曲線の曲率半径は、
という表示を持つそうなので、これを使えば便利です。
与えられた図の中でを求めるには、曲線の傾きを横方向1pixelごとに数えてとし、さらにそれらの傾きをすべての点でマッピング・グラフ化して、同様にその傾きを求めていけばその値をとできるでしょう。
曲率半径は、点ごとに違う値をとることに注意してください。
曲率半径の式は
http://hooktail.sub.jp/vectoranalysis/Curvature/
を参考にしました。
コメント(0件)