Win32用 基本グラフィックス・クラスライブラリ GLIBW32 ver1.36

Graphics Library for Win32

2004/11/23更新

Copyright(C)1998-2005 Yamada, K


Glibw32

ソフトウェアの更新
  • Visual C++ ver.6 でVisual C++ Toolkit 2003 を使う 解説を追加(2004.11.22)。
  • サンプル・プログラムを2つ変更。 詳しくは、下記をご覧ください(2004.11.19)。
  • GLIBW32 のバージョンが ver 1.36 になりました。 詳しくは、下記をご覧ください(2003.12.10 版)。

【概要】  Windows95/98/2000上でのコンソール・プログラミングで利用できる、C/C++ 言語用のグラフィックス・クラスライブラリです。  このライブラリーでは、標準入出力はコンソールに割り当てられ、グラフィ ックスを描画するウィンドウを1つ持つことができます。  コンピュータで扱う座標系はディスプレイあるいはウィンドウの左上端を原点 に、縦方向の座標軸を下向きにとり、座標の目盛はドット(ピクセル)を単位と します。一方、私たちが実際にイメージする図形は平面(2次元)では縦軸は上 向きで(デカルト座標)、様々な単位をとります。  前者をスクリーン座標(物理座標)、後者をイメージ座標(論理座標)と呼ぶ ことにすると、描画の際には、2つの座標系の間で原点、縦座標軸とスケールの 変換をしなければなりません。  このライブラリーは、その座標変換を自動的に行うため、GRAPHクラスを備えて います。図形はGRAPHクラスのオブジェクトが座標系、線の太さや色形を管理しま す。ユーザーはイメージする座標系だけを意識してプログラム が書けます。  また、クラス GRAPHのメンバー関数として1,2変数関数グラフの描画(例えば 曲線や等高線)や連立常微分方程式の解を求めてグラフにする機能などを備えてい ます。描画した図形はbmpファイルとして保存することもできます。

【機能】

【利用環境】  ボーランド社の Borland C++ 5.x、Borland C++ Builder (1.x 以上)  マイクロソフト社のVisual C++ (ver. 6) 、Visual C++ .NET  gcc-2.95.x & gcc-3.x / MinGW32(Minimalist GNU-Win32)、 Cygwin のコマンドライン・コンパイラで利用できます。 [注意]: 2002年1月17日以来告知してましたように、Visual C++ について は ver. 6 より前のバージョンには対応しません。 また、Visual C++ .NET (Visual C++ ver.7)には対応しています。  これまで互換性のため ver 4.0 でコンパイルしていましたが、その仕様 が標準C++(ANSI/ISO C++)規格と比べて古くなり過ぎたので、これを止め ました。

【利用制限】  このソフト・ウェアはフリーソフトです。著作権は Yamada, K が保有します。 非営利行為に限り利用・再配布は自由です。再配布する場合は、アーカイブ内容 をそのままの形で配布してください。サンプル・プログラムなども、このソフト・ ウェアの一部です。また私的な範囲を超えて利用・再配布する場合はメールで 連絡ください。

【ライセンス補足】  上記、本ソフト・ウェアのライセンス規約には暗黙の了解事項は書いていません。 念のため補足します。これはすべてのバージョンに適用されます。

  1. 本ソフトウェアの再配布においては、仲介料・手数料に類する金銭の授受 は無いものとします。
  2. 無保証です。本ソフトウェアは利用者個人の責任において利用ください。
  3. 本ソフトウェアを使って、人の迷惑となる行為を目的とするプログラムの 作成を禁止します。
  4. 本ソフトウェアのWeb上での配布元は、原則として当 Web ページだけです。
  5. 研究等で利用した場合、公表する論文の Reference などで本ソフトウェア のCopyright と当ホームページの URL(トップページ)を明記してください。 その他の職掌の上での利用もこれに準じてください。
  6. 担当する授業や研修等で利用する場合は必ず連絡ください。
以上のこと、お守りください。

【ファイル構成】 wininit.h グラフィックス初期化関数定義ヘッダーファイル(共通) glibw32.h クラスライブラリ関数定義ヘッダーファイル(共通) glibw32.lib Borland C++用ライブラリ glibv32.lib Visual C++用ライブラリ libglibw32.a gcc-2.95.x/Mingw32, Cygwin 用ライブラリ libglibw32-3.a gcc-3.x/Mingw32, Cygwin 用ライブラリ ReadMe.txt 概要(最初にお読みください) usage.txt 使い方の簡単な説明 関数仕様.hlp 主なクラスライブラリー関数仕様のヘルプファイル その他 サンプル・プログラム、サンプル・バッチファイル (それぞれサブディレクトリ samples と bat 内にあります)

【サンプル・ファイル】  添付しているサンプル・プログラムは、元々は機能確認のためのものですが、 このライブラリのチュートリアルとしての役割をも意図しています。その多く は小さいながらも、意味を持ったプログラムになっています。  必ずファイルのコメントを確認してからコンパイル・実行してください。 サンプル・プログラムのタイムスタンプは、バージョンをリリースした日付に なっています(時刻はバージョン番号を表します)。始めての場合は、日付が 最も古い TESTx.cpp などからコードを読んでゆけば、このライブラリの使い方 だけでなくプログラミングの基本的な手法とスタイルを学ぶことができます。

【環境の設定】  全てに共通のヘッダファイルは、 wininit.h と glibw32.h です。ライブラリ は、 Borland C++ / Borland C++ Builder では glibw32.lib を、 Visual C++では glibv32.lib を、 gcc-2.95.x/Mingw32, Cygwin では libglibw32.a を gcc-3.x/Mingw32, Cygwin では libglibw32-3.a を 使います。  コマンドライン・コンパイラの使い方は usage.txtをご覧ください。 簡単な説明があります。

【既知の問題】  メンバ関数 GRAPH::getpixel() は、ビューポートの右端と下端のピクセルの 色の読み出しに失敗する。

【新しい更新内容】
 ●2004.11.19
  • サンプルプログラム Color07.cpp と Color08.cpp を変更。 これは、Visual C++ .NET のコンパイラの仕様変更に合わせて コードを一カ所変更したもので、バージョン・アップではあり ません。
 ●Ver 1.35 -> Ver 1.36 (2003.12.10)
  • gcc-3.2.x/MinGW32、Cygwinに対応しました。ライブラリは libglibw32-3.a です。
  • gcc-3.2.x を利用しない場合は更新の必要はありません。
  • サンプルソース arc03.cpp で、関数 and(),or(),not()の名前 を変更しています。  標準C(ANSI C99) では、演算子&&等の同義語として定数 and 等が使えます(これらはiso646.hで定義)。標準C++(ANSI C++) ではこれらはキーワードです。gcc-3.2/MinGW32、Cygwinでは エラーとなります。

    過去の更新の履歴はこちら

【 GLIBW32 ver 1.36 のダウンロード】 ダウンロードする(ファイル名:Glw32136.lzh ファイルサイズ:222K)

  • このソフトウェアは、ウィルス検査を行っています。
  • ファイルは吉崎栄泰氏による LHA (Copyright(c)1988-92 H.Yoshizaki)を 使って圧縮しています。
  • 解凍するときはディレクトリ付きでファイルを復元しましょう。

Copyright(c) 1998-2005 Yamada, K