双曲放物面 y = z^2 / a^2 - x^2 / b^2 をX-Y平面(ディスプレイ面)に平行面で等間隔に切断して得られる曲線群を、Y軸の回りに任意の角度だけ回転して得られる曲線群を描くプログラムが分かりません。教えてください。
> 曲線群を回転させるには?
回転する前までのプログラムはできていますか?
式の意味自体がよく分からないのでできていません。すみません。
じゃ、回転できませんね。
XZ面を、X-Z座標でなく、rθ座標(半径と角度)にとして式を変換してみてください。
あとは、角度ごとにその式を計算してやればよいかと思います。
> X-Y平面(ディスプレイ面)に平行面で等間隔に切断して得られる曲線群
なんだから、XZ 面じゃなくて、z が一定の XY 面だと思う。
なるほど。読み直して納得しました。
Y軸上を回転するように切断するのかと勘違いしてました。
そうなると、単純にZをずらして座標を計算し、それを元に三角関数で任意の角度分回転させた座標を計算してやればよいですね。
> Y軸上を回転するように切断するのかと勘違いしてました。
そう、問題が変だよね。XY面では上に凸な二次曲線で、これを Y軸に回転した
とき、どの面の透過座標で描けばいいのか定義されていないのね。
解決しました。ありがとうございます。
ツイート | ![]() |