更新の履歴 GLIBW32
●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では
エラーとなります。
●Ver 1.34 -> Ver 1.35 (2003.12.03)
- これはバージョンアップというほどのものではありませんが、
初版(Ver 1.0) 以来からあった誤りを修正しました。色のマクロ名
と色番号が一部逆に対応していました。併せてヘルプファイルを修
正しました。5年間放置したままとは不思議。
- 内部実装の小さな変更。
●Ver 1.33 -> Ver 1.34 (2003.11.08)
●Ver 1.32 -> Ver 1.33 (2002.07.19)
- 次の3つの関数を追加。
(1)ビットマップを読み込むグローバル関数:loadbmp()、
(2)座標値の色を読み出すメンバ関数: GRAPH::getpixel()、
(3)カラーパレットを使わないで点を打つメンバ関数: GRAPH::pset()、
3つ目は、RGB値を直接引数に渡す点関数で、フルカラーで扱える。
以上の関数があれば、画像処理プログラムが容易に書けます。あとは腕
しだい。
- COLORREF型を使った関数 setcolor256()、GRAPH::pset() および
GRAPH::getpixel()を多重定義。
COLORREF型とは Win32 API でマクロ定義されたデータ型で、色のRGB値を
4バイトで記憶します。詳しくはヘルプファイルをお読みください。
- 保存したビットマップの画像が、右端と下端の1ピクセルだけ抜け落ちる
問題を解決。
- 【重要】ヘッダーファイル WININIT.H で、基本16色のマクロ名を一部変更。
以前に書かれたプログラムがエラーを起こすことが無いようにしていますが、
マクロ MAGENTA と CYAN を使っている場合は、色が違っています。
- 内部実装の一部を変更。
- サンプルプログラム loadbmp01.cpp〜loadbmp07.cpp およびcolor16.cpp
を追加。いずれも実行する前に、必ずソースのコメントをお読みください。
これらは単独では動作しません。
●Ver 1.31 -> Ver 1.32 (2002.06.06)
- ビューポートの設定に関して、起こりうる潜在的な不具合を避けるため
小さな修正をしました。
この修正とは関係ありませんがサンプルプログラム phys05.cpp と
fractal5.cpp, fractal6.cpp を追加。
●Ver 1.30 -> Ver 1.31 (2002.05.26)
- 内部実装の一部を変更。
- 透視図の設定でパラメータに、これまでの視点座標に加えて注視点
座標を指定できるようにしました。注視点を設定するメンバー関数
GRAPH::center() を追加。
- サンプルプログラム eye08.cpp, eye09.cpp を追加しました。
●2002年3月9日
- ドキュメントファイルで、環境設定など内容が古くなった部分を
修正し、Windows 2000 での設定について加筆。この Web ページ
も書き換えてあるので、既にダウンロードされている方は改めて
ダウンロードする必要はありません。
- サンプルプログラム Color15.cpp を追加。これは Color14.cpp の
おまけです。CSVファイルの読込みを、より簡潔なコードで書いただ
けものです
これらはグラフィックスとは関係ありませんが、計算結果をファイル
に保存した後で、それを描画する場合はよくあります。参考になれば、
これ幸い。
●Ver 1.29 -> Ver 1.30 (2002.02.28)
- カラーパレットを設定する関数のプロトタイプを
setcolor256(int (*)[3], int)
から setcolor256(const int (*)[3], int) に変更。
この変更に伴い、Visual C++ 用のライブラリは ver.6 でコンパイル
しています。その為、今後 GLIBW32は Visual C++ ver.4, ver.5 に
対応しません。
サンプルプログラム Color09.cpp、Color10.cpp を変更しています。
- カラーパレット設定に関する関数を追加。
(1) RGB値から色番号を求める関数:rgb2number()
(2) 色番号からRGB値を求める関数:number2rgb()
(3) 基本16色の色番号を取得する関数:get_color_number16()
- サンプルプログラム Color11.cpp 〜 Color14.cpp を追加しました。
●Ver 1.28 -> Ver 1.29 (2002.01.10)
- ユーザが指定した色でカラーパレットを設定する関数を追加しました。
グローバル関数 setcolor256() として多重定義しています。
この関数は、RGB値を格納した2次元配列からカラーパレットを
設定します。
- サンプルプログラム Color09.cpp、Color10.cpp を追加しました。
●Ver 1.27 -> Ver 1.28 (2001.01.05)
- Windows 2000で、コンソール入力を行うとグラフィックス画面が隠
れるのを修正。Windows 2000 で実行しない場合は、Ver 1.27 のままで
構わない。
●Ver 1.26 -> Ver 1.27 (2000.12.30)
- メンバ関数 GRAPH::moverel() を追加しました。
- 文字列表示関数 textout()、GRAPH::textout()で文字表示の品質を改善
しました。
- サンプル・プログラム FRACTALx.cpp を追加(おまけ)。
●Ver 1.25 -> Ver 1.26 (2000.11.11)
- タートル・グラフィックスに関する小さなメンバ関数を追加しました。
現在位置を返す関数 GRAPH::getx()、GRAPH::gety()
現在位置から相対座標へ線を描画する関数 GRAPH::linerel()の3つです。
- 関連するサンプル・プログラム getxy.cpp、linerel.cpp、phys04.cpp
を追加しました。
●Ver 1.24 -> Ver 1.25 (2000.06.10)
- 円弧を描くメンバ関数 GRAPH::arc() を追加。
サンプル・プログラム arc0x.cpp を参照。
- 扇形描画関数 GRAPH::pie(), GRAPH::fpie() で角度指定の仕様を変更。
円弧は始角度から終角度へ反時計回りの範囲を描くようにしました。つまり、
引数へ渡す2つの角度の値を入れ替えると円弧の範囲は反対側になります。
サンプル・プログラム fpie.cpp を修正しています。
●Ver 1.23a -> Ver 1.24 (1999.10.05)
- GNU-Win32/GCC-2.95に対応。
- 関数仕様のオンラインヘルプを用意した。
- 文字描画関数 textout(), GRAPH::textout() でフォントの指定と表示角度を
変更できるようにした。textoutx.cpp をご覧ください。
- 2変数関数3次元プロット GRAPH::plot_func3() の旧仕様の方を廃止。
そのためサンプル・プログラム PLOT05.cpp, PLOT06.cpp を修正しています。
- 一部の内部実装を変更。
●Ver 1.23 -> Ver 1.23a (1999.04.17)
Borland C++の新しい版 ver 5.4 (C++ Builder 4)でコンパイル仕直し
ました。
コンパイラの仕様が変更されたのに合わせて一部のコードを書き換えまし
た。ライブラリの利用には影響はありませんので以前の版ver 1.23 のまま
で更新する必要はありません。ライブラリの関数仕様の変更はありません。
ただしVisual C++ 用のライブラリglibv32.lib は、最新のVisual C++
ver 6.0 が下互換性を持たないので、以前のver 4.0 でコンパイルしてい
ます。
●99年1月31日
サンプル・ソースを追加。KEYx.CPP
●99年1月24日
サンプル・ソースの訂正 mouse01.cpp
●99年1月18日
ライブラリ・ファイルを修正しました。
視点座標の設定 GRAPH::eye() で、角度座標が規定の範囲を超えても
よいようにコードを変更しました。ライブラリ・ファイルのタイムスタ
ンプが [99/01/18 01:23]になっています。
●Ver 1.22-> Ver 1.23 (1999.01.16)
次のグローバル関数を追加
vkey() :グラフィックス・ウィンドウからキー入力を読みとる関数
仮想キーコードを読み取ります(ASCII文字以外のキーが使える)。
サンプル key2.cpp をご覧ください。
次のメンバー関数を追加
wmouse():マウスボタンを押した位置を読み取る関数(待機関数)
mouse():同(非待機関数)
これにより、マウスをクリックした位置の値を使った図形の描画や、
再描画を行うプログラムが書けるようになりました。
詳しくはサンプル mouse0x.cpp をご覧ください。
●Ver 1.21-> Ver 1.22 (1999.01.14)
図形描画で、前景混合モードの設定を可能にした。描画色を背景色と混合す
る(色を論理演算で重ね書きする)ことが可能。使い方は、サンプル・ソース
setrop0x.cpp をご覧ください。
透視図法の機能でメンバー関数を追加(透視座標変換で透視座標のz成分も
参照できるようにメンバー関数 perspective を多重定義)。
グローバル関数およびメンバー関数 paint の引数の順番を変更。
グローバル関数 key() を追加(キー入力待ち関数、key.cpp 参照)。
●1999.01.10
ドキュメント(関数定義.TXTファイル)を訂正。
●1999.01.07
ドキュメント(関数定義.TXTファイル)を加筆・訂正。
●1998.12.24
透視図法サンプル・ソースを追加。
●Ver 1.2 -> Ver 1.21 (1998.12.17)
3次元空間の図形を描くための透視図法の機能をサポートした。これ
に伴い、従来の2変数関数プロットの仕様を一部変更した。使い方は、
サンプル・ソース eye0x.cpp をご覧ください。
●Ver 1.1a -> Ver 1.2 (1998.12.01)
色の設定をこれまでの16色の他に256色表示で扱えるようにし
ました。サンプル・ソースをいくつか追加。
●1998.11.28
説明用のドキュメント(TXTファイル)を加筆しました。
●Ver 1.1 -> Ver 1.1a (1998.11.23)
Borland C++の新しい版 ver 5.3 でコンパイル仕直した。ヘッダー
ファイルを一部書き換え、説明用のドキュメント(TXTファイル)を加
筆・訂正。コード上の実質的変更は無い。
●Ver 1.0 -> Ver 1.1 (1998.11.18)
扇形を描画するメンバー関数 GRAPH::pie及びGRAPH::fpieのバグを
修正。中心座標が(0,0)以外のときに結果が間違っていた。これを、
ご指摘いただいた山本秀樹さんに感謝します。
●1998.07.19 公開
●Ver 1.0 (1998.04.01)
| 戻る |
Copyright(c) 1998-2003 Yamada, K