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

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

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

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

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

3778閲覧

glLineWidth();関数でもっと線を太くする方法が知りたい。

退会済みユーザー

退会済みユーザー

総合スコア0

OpenGL

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

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2021/06/27 07:16

提示コード3っ目のコードですがglLineWidth();関数を使って線の太さを指定出来るのですがその線の太さの最大太さを参考より表示させると1という値が出るのですが実際1以上の値を設定しても太くすることができ4以上の値を設定するとそれ以上太くなりません。提示画像が最大太さなのですがもっと太くする方法はないのでしょうか?

参考サイト: https://ydah-blog.netlify.app/2019-05-20/

cpp

1 GLint range; 2 glGetIntegerv(GL_ALIASED_LINE_WIDTH_RANGE, &range); 3 std::cout << range << std::endl; 4

イメージ説明

cpp

1FrameWork::DrawLine(glm::vec2(900, 100), glm::vec2(1000, 200), 100, 0, glm::vec4(0, 255, 0, 255)); 2

cpp

1 2 // ##################################### 線 描画 ##################################### 3 void DrawLine(glm::vec2 start,glm::vec2 end, GLfloat width,GLdouble r, glm::vec4 color) 4 { 5 glColor4f(color.x * RGBA_COLOR, color.y * RGBA_COLOR, color.z * RGBA_COLOR, color.w * RGBA_COLOR); 6 7 start = getWindowPosition(start); 8 end = getWindowPosition(end); 9 10 glm::vec2 size = glm::abs(end - start) / 2.0f; 11 12 glPushMatrix(); 13 { 14 glMatrixMode(GL_MODELVIEW); 15 glTranslated(start.x + (size.x), start.y - size.y, 0); 16 glRotated(FrameWork::GetAngle(r), 0, 0, 1); 17 glLineWidth(width); //太さ 18 glBegin(GL_LINES); 19 glVertex2f(-size.x, size.y); 20 glVertex2f(size.x, -size.y); 21 glEnd(); 22 glFinish(); 23 } 24 glPopMatrix(); 25 26 } 27

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

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

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

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

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

guest

回答1

0

ベストアンサー

結論から言うとありません。以下のコードはラインの最小値と最大値を取得するコードですが1,7という値が返ってきました。そのため7以上の太さにする場合は頂点数を増やすしかないみたいです。

cpp

1 GLfloat lineWidthRange[2] = { 0.0f, 0.0f }; 2 glGetFloatv(GL_ALIASED_LINE_WIDTH_RANGE, lineWidthRange); 3 // Maximum supported line width is in lineWidthRange[1]. 4 5 std::cout << lineWidthRange[0] << std::endl; 6 std::cout << lineWidthRange[1] << std::endl; 7 8

投稿2021/06/27 08:06

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問