2011年4月20日水曜日

トーラスのひねりっす

詰まったので、UIをどうするのかを考えてたっす。
いくつか案があるので、作ってみて評判を聞いてみるっす。
やれるところからやっていくっす。
どうもぺんぎんっす( ◎v◎ )


球のひねりは解決できたっす。
次はトーラスのひねりっす。

SLのトーラスは、楕円に楕円なんっすよね。
楕円を楕円の周囲に沿って回転させた軌跡になるっす。
やり始めたとき、2.7秒ほどボールペンが止まったっす。
いきなりの難関だったっす。

トーラスの基本形は3ステップからなるっす。
媒介変数表示していくと分かりやすいかもっすね。
1.楕円を作る
  x = a・cosθ
  y = b・sinθ
  z = 0
2.平行移動する
 x = a・cosθ
 y = b・sinθ + R
 z = 0
3.回転させる
 x = a・cosθ
 y = (b・sinθ + R)cosφ
 z = (b・sinθ + R)sinφ

θ = -(μ + π/2)とおくと
x = -a・sin(-μ) = a・sinμ
y = {b・cos(-μ) + R}cosφ = (b・cosμ + R)cosφ
z = (b・cosμ + R)sinφ
見た目は違うっすけど同じことっす。

本題のひねりは、自分の予想では最初の楕円を作る時、
θ → θ+ひねり分 としてやれば良いんじゃないかと思ったっす。
小円(楕円になってるんっすけどね)が傾いて、
大円(これも楕円っす)には変化が無いように見えたからっす。


媒介変数表示がマズイのか、それとも組んだスクリプトがマズイのか。
うまくいかないっすねえ。

0 件のコメント:

コメントを投稿

Free Avatar