GL_LINESを使った線描画について
開発環境:win10 wsl(ubuntu18.04) gcc(7.5.0),c言語,opengl
開発者:医療従事者.
Marching Square’s を使った等高線描画の学習をしています.
実行ファイルに,等高線データファイル(.dat)を読み込ませ実際に等高線を描画していると等高線の本数が増えた際,それまでに描画できていたものが欠けた図になってしまいます(下図参照).
glBegin(GL_LINES); for (j=0; j<n4; ++j){ glVertex3dv(msvertex[msedge[j+en*i][0]]); glVertex3dv(msvertex[msedge[j+en*i][1]]); } glEnd();
上記のコードのように,GL_LINES を用い線分で繋いでいく描画方法で実行しています.
現状は与えられた値を9分割にして等高線を描画していますが,
例えば,等高線5本まではすべて描画されますが,6本目を追加して描画すると3本目,4本目,5本目に描かれた等値線が一部欠けて描画されるようになります.7本,8本と増やしていくと線の欠ける量が増えていきます.
エラーメッセージは無く,以下のような警告文はfscanfを使用した個数分示されています.
GL_LINESだと同時に描画される本数に上限があるのでしょうか?
どのような思考で回避策を考えればよいかわからず,お知恵を拝借したいと思い質問させていただきました.
発生している問題・エラーメッセージ
msv.c:65:8: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
fscanf(fin, "%d %d %d %d", &n1, &n2, &en, &ln);
該当のソースコード
fscanf(fin, "%d %d %d %d", &n1, &n2, &en, &ln);
あなたの回答
tips
プレビュー