javaで3次元の3つの点から長方形を書こうと思っています。
しかし、与えられた3つの点は長方形の頂点ではないため、そのまま使うと歪んでしまいます。
↑ABを通りCを使って描かれた長方形イメージ図
java
1import javax.vecmath.Vector3f; 2import org.lwjgl.opengl.GL11; 3~略~ 4/** 5 * 長方形を描く 6 * @param A 位置A 7 * @param B 位置B 8 * @param C 位置C 9 */ 10public void drawQuad(Vector3f A, Vector3f B, Vector3f C) { 11 12 // A2(A')を求めたい 13 Vector3f A2 = ~~~~~; 14 15 // A2からB2を求める 16 Vector3f AtoB = new Vector3f(B); 17 AtoB.sub(A); 18 Vector3f B2 = new Vector3f(A2); 19 B2.add(AtoB); 20 21 // 描画 22 GL11.glBegin(GL11.GL_QUADS); 23 GL11.glVertex3f(A.x, A.y, A.z); 24 GL11.glVertex3f(B.x, B.y, B.z); 25 GL11.glVertex3f(B2.x, B2.y, B2.z); 26 GL11.glVertex3f(A2.x, A2.y, A2.z); 27 GL11.glEnd(); 28 29}
A'を求めることは可能でしょうか?
また、A'は具体的のどのようなプログラムで計算すれば求まるのでしょうか?
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/03/07 14:52
2016/03/07 16:24