私は束のtetrahedraでいくつかの3Dグラフィックスをレンダリングしようとしています。私は1つの四面体を他の四面体と完全に対面するように回転させる方法を理解しようとしています。これが混乱している場合、対面する複数の四面体はthisのように見えます。3次元テッセレーションのための四面体の回転
私はプログラムでオブジェクトを回転させるためにOpenGLを使用していますので、一度に3つの軸のうちの1つだけを回転させることができます。例えば、Xで時計回りに20度、Zで反時計回りに45度回転することができます。
私はこのプログラムのプログラミング面を理解しています(OpenGLのglRotatef()関数を使って一度に1つの軸で回転します)。 3dテッセレーションを達成するためには、各軸に必要な特定の角度にもっと関心があります。
何か助けていただきありがとうございます、より明確にする必要がある場合はお知らせください。
ありがとうございました。問題は、実行時に追加の四面体を追加または削除しようとしていることです(おそらくこれを指定しているはずです)。各四面体は、tetradronオブジェクトのちょうど一つのインスタンスに関連付けられている必要があります。これは理にかなっていますか?あなたの興味深い解決策への可能な変更? –
基本的には、常に何かが接続されている限り、同じことができます。別のインスタンスを作成するには、既存の3つの頂点(接続先の面のもの)を複製し、上記のように4番目の頂点を計算します。実行時にエッジの長さを変更することはできません。また、適切に接続することもできないため、高さは事前に計算された定数のままです。 – Damon
だから、おそらく、コンストラクタに隣接する四面体のインスタンスと新しいものが隣接している特定のエッジを渡すことによって、1つの四面体のインスタンスを常に作成しなければならないでしょう。それは受け入れられると思う。ありがとう! –