FC2ブログ

GLUI:GLUT用ライブラリ

2013-05-12 :  PCクリニック
本文の前に、
-・・・ -・-
現時点での、blogramのランクインカテゴリは、
5、1、4、2、0 1、1、0、0、1(43)で、換算ポイント 93pt 。
・-・ - -・

さて、本文。

ほぼ3年前(2010-05-30)に、
C(gcc) 入門(8)「GLUT」

  ・・・・・

  C 言語でのグラフ描画なら、「GLUT」ですか?

  非常に納得できるサイトを見つけました:
  GLUTによる「手抜き」OpenGL入門

  ・・・・・

なんて、書いていました。


今頃になって、ですが、
glui : OpenGL / glut 用簡易ウィジェット
なんてサイトを見つけました。
このページ、2004年12月1日 のもの???

本家のサイトは、
GLUI User Interface Library
ですか?

July 2006 の Version 2.35

が最終???

かなり古いものですが、・・・・・


最初の、
日本語のサイトでは、

 glui とは,OpenGL で利用可能な簡単なウィジェットライブラリです.
 以下のような特徴があります.

  ・OpenGL および glut にのみ依存するため,移植性が高い.
    OpenGL と glut が動作する C++ の環境であれば,
    基本的に同じソースコードが動作します.
    具体的には Linux, Windows (Visual C++, gcc), Macintosh
    などが利用可能です.

  ・glut から自然に移行できる.
    glut のソースを大きく変更することなく,
    ソースに追加していく形で GUI を作成できる.
    つまりマウスやキーボード,再描画などのイベント
   (コールバック関数の取り扱いやウィンドウの作成など
    ほぼ全てのglutの関数がそのまま有効であり,利用可能である.

  ・GUI のデザインが簡単.
    ソースコードの記述順に,ボタンやチェックボックスなどの部品が
    自動的に(左上から)配置されるため,別途,部品を配置するための
    ファイルやデータの作成,また専用のデザインツールなどが必要ない.

  ・研究活動に向いた機能主体である.
    立体的なCGを様々な視点から観察する際に便利な,3次元的な
    回転や平行移動のための専用の部品を持つ.
    これを利用すると,直接glMultMatrix() で利用可能な行列が
    与えられるため,クォータニオンなどを知らなくても
    対象の回転が簡単に出来る.

 反面,単純さゆえに以下のような欠点があります.

  ・凝ったデザインが難しい.
    ソースコードの記述順にボタン等が並ぶだけであるため,
    自由に部品を配置することが難しい.また,ボタンに
    アイコンなどの絵を重ねて表示することなどができない.

  ・部品の種類が少ない.
    ウィンドウ端のスクロールバーや,連続値を入力する
    スライドバーなどが用意されていない.

 しかし研究で用いる簡単なプログラムには十分ではないかと思います.

 OpenGL の入門に最もよく使われる glut では右クリックによる
 メニュー程度しかありませんので,ファイル名などのテキストを入力
 させるには自ずとコマンドラインに頼りがちになりますが,
 glui を使えばスマートに組み込めます.
 また,glut では右クリックをしなければメニューが表示されませんので,
 ユーザになんらの説明もせずに使わせることは難しいのですが,
 glut ではボタンなどが配置できるというのもいいところです.


そして、
インストールのページ」には、

 「Windows XP, MinGW (または cygwin) の gcc」

 ・処理系のインストール
  1.MinGW-3.1.0-1.exe もしくはより新しいものを入手、実行(・・・から)
    デフォルトでは C:\MinGW にインストールされるので,以下はそれを仮定する
  2.C:\MinGW\bin にサーチパスを通す.
    [マイコンピュータ]右クリック-->[プロパティ]-->[詳細設定]タブ-->
    [環境変数]下段の[システム環境変数] の "Path" 末尾に以下を追加
      C:\MinGW\bin;
  3.コマンドプロンプトから gcc が実行できることを確認
  4.make をインストールする.上と同じ場所から,mingw32-make-3.80.0-3.exe
    もしくはより新しいものを入手、実行
    C:\MinGW\bin にインストールされる
  5.C:\MinGW\bin の mingw32-make.exe を make.exe に名称変更

 ・glut のインストール
  C:\MinGW\lib には libglut32.a, libglut.a などがあるが、なぜか glut.h がない。
  1.Windows 用の glut である,glut-3.7.6-bin.zip を入手、展開 (・・・から)
  2.glut32.dll を C:\WINDOWS\system32 に入れる
  3.ming32gl.zip を google 等で探して展開し、GL ディレクトリの中身をすべて、
    C:\MinGW\include/GL と置き換え。
  4.プログラムの動作確認.ソースプログラムを glut.c とすると
    gcc -o glut glut.c -lopengl32 -lglut32
    としてコンパイルし,実行してみる.

 ・glui のインストール
  1.glui_v2_1_beta.zip を入手、展開
  2.makefile の編集
    ・CC=CC -g0 -o32 とあるところをコメントアウト(行頭に # をつける)
    ・cc=g++ -O3 の行の頭の # を取る
    ・GLLIBS=-L${GLUT_LIB_LOCATION} -lglut -lGL -lGLU を以下のように変更
      GLLIBS=-lopengl32 -lglut32 -lglu32
    ・libs = の "-lXmu -lXext -lX11 -lXi" を削除する
    ・従来は CFLAGS = -mno-cygwin とする必要があったが、現在は不要のようだ。
    ・GLUT_LIB_LOCATION, GLUT_INC_LOCATION の定義は不要なので、
      気になる場合はどちらも . などにしておけばよい。
  3.フォルダを2つ作成する(lib と bin)
  4.glui.h の編集
    ・friend <クラス名> となっているところ(7箇所)を
      friend class <クラス名> に変更する
      (make してみて、エラーの出る行、およびその周辺)
    ・example*.cpp の main の戻り値の型を修正する
      void main(..) となっているのを int main(..) に変更
  5.make する
  6.bin ディレクトリのサンプルの動作を確認。
     また、lib/libglui.a, glui.h を適切なディレクトリにコピー

とある。



このGLUI も、
GUIアプリ開発用のC++ライブラリ
ですね。

これも、気に留めておこう。

古いけど、まぁイイか??


おそまつでした。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン

日記@BlogRanking    
関連記事
スポンサーサイト



コメントの投稿

管理者にだけ表示を許可する

人気blog Ranking



最新記事
カレンダー
07 | 2021/08 | 09
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
月別アーカイブ
カテゴリ
最新コメント
検索フォーム
リンク
プロフィール

<紙>

Author:<紙>
ようこそ。
「パソコンヲタクの雑記帳」
もろもろなことを綴っています。
パソコン ヲタクってねくら?
画像は kami でなく kani です。

FC2 / i2i / Google




Google Analytics
ブックマーク