質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
OpenGL

OpenGLは、プラットフォームから独立した、デスクトップやワークステーション、モバイルサービスで使用可能な映像処理用のAPIです。

Q&A

解決済

1回答

3597閲覧

OpenGLで正二十面体を描画したい! コンピュータグラフィックス

tomotomtony

総合スコア14

OpenGL

OpenGLは、プラットフォームから独立した、デスクトップやワークステーション、モバイルサービスで使用可能な映像処理用のAPIです。

0グッド

0クリップ

投稿2017/01/11 04:11

OpenGL、コンピュータグラフィックに詳しい方宜しくお願いします。

頂点の位置情報から正二十面体を描きたいです。

http://www.h6.dion.ne.jp/~ooya/Suugaku/Seitamentai.pdf

上記のページを参考に頂点12個と三角形20個から正二十面体を作成しようとしました。イメージ説明

![イメージ説明)
環境はOpenGL(Java言語)です。

しかし、三角形は頂点で結びつくことなく、交差してしまっています。
上のスクリーンショットのようになりました。どこが問題なのか教えて下さい。
宜しくお願いします。
・座標の問題でしょうか?
・描画方法の問題でしょうか?

以下、OpenGLのソースコードの一部です。

//12個の頂点 float x = 1.618f;//((1 + Math.sqrt(5)) * 0.5) private final float[] VertexData = new float[]{ 0.0f, -1.0f, -x, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,0f, //#0 //最初の3つが頂点座標 0.0f, 1.0f, -x, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,0f, //#1 0.0f, -1.0f, x, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,1f, //#2 0.0f, 1.0f, x, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 0f,1f, //#3 -x, 0.0f, -1.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 0f,0f, //#4 -x, 0.0f, 1.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,0f, //#5 x, 0.0f, -1.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,0f, //#6 x, 0.0f, 1.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,1f, //#7 -1.0f, -x, 0.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 0f,1f, //#8 1.0f, -x, 0.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 0f,0f, //#9 -1.0f, x, 0.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 1f,0f, //#10 1.0f, x, 0.0f, 0.0f, 0.0f,-1.0f, 1f,0f,0f,1f, 0f,1f //#11 };//position(x,y,z) normal color texcoord //20個の三角形 private final int[] ElementData = new int[]{ 1,2,7, 2,1,5, 3,4,6, 4,3,8,// 5,6,11, 6,5,9, 7,8,10, 8,7,12,// 9,10,3, 10,9,1, 11,12,2, 12,11,4,// 1,7,10, 1,9,5, 2,5,11, 2,12,7,// 3,6,9, 3,10,8, 4,8,12, 4,11,6 };

注意:GLUTなどの関数は用いずに作成したいです。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

凡ミスでした。
頂点は0から11名に対し、三角形を1から12で指定していました。
三角形を0から11で指定しなおせば、無事正二十面体が作成できます。

投稿2017/01/12 05:32

tomotomtony

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問