アットウィキロゴ

DrawPS2 Reference


DRAWPS2クラス

メンバ関数

備考
ウィンドウを作成します。
この関数は他のクラスの関数より後に呼び出す必要があります。

windowクラス

変数 意味 備考
enum SIM style シミュレーションの種類 オブジェクトの描画方法を指定します
win32APIならDRAW_PS、OpenGLならbeachを代入します。
変数 意味 備考
bool menu メニューの有無 falseのときメニューバーを非表示にします。
変数 意味 備考
bool maximize 最大化の有無 falseのとき最大化を無効にします。
また境界線も持たなくなります。
引数 意味 備考
int width ウィンドウ幅 objの作成するウィンドウの幅と高さをピクセルサイズで指定します。
int height ウィンドウ高さ
引数 意味 備考
int x ウィンドウx座標 objの作成するウィンドウの表示座標をピクセルサイズで指定します。
スクリーンの左上が原点(0,0)となります。
int y ウィンドウy座標

eventクラス

オブジェクトの初期化、計算、描画、マウス、キーボードの動作を登録する関数群です。引数は関数ポインタになります。

引数 意味 備考
void* func 初期化処理を定義した関数ポインタ ウィンドウ作成時に一度実行する関数を登録する関数です。
停止の際にもここで登録した関数が呼び出されます。
引数 意味 備考
void* func 計算処理を定義した関数ポインタ 内部処理を行う関数を登録する関数です。
setAnimationTime()関数で設定した秒毎に呼び出されます。
引数 意味 備考
void* func 描画処理を定義した関数ポインタ 無効領域が発生したとき実行する関数を登録する関数です。
Update()関数が呼び出されたときにも、ここで登録した関数が呼び出されます。
引数 意味 備考
void* func マウス処理を定義した関数ポインタ マウスの動作の関数を登録する関数です。
stateの定義は下記の表を参照ください。
座標(x,y)はウィンドウの左上を(0,0)としたスクリーン座標値です。
UINT state マウス動作を表すマクロ
int x マウス動作を行ったx座標
int y マウス動作を行ったy座標
引数stateの動作一覧
マクロ 動作
WM_LBUTTOMUP 左クリックを押した
WM_LBUTTOMDOWN 左クリックを離した
WM_RBUTTOMUP 右クリックを押した
WM_RBUTTOMUP 右クリックを離した
WM_MBUTTOMUP 中央クリックを押した
WM_MBUTTOMDOWN 中央クリックを離した
WM_MOUSEMOVE ウィンドウ内でマウスを動かした
WM_NCMOUSEMOVE ウィンドウ外でマウスを動かした
引数 意味 備考
void* func キーボード処理を定義した関数ポインタ キーボードの動作の関数を登録する関数です。
キーを押すとwpには対応するASCIIコードが入ります。
またEnterやスペースキーなどのシステムキーは仮想キーコードが入ります。
定義は下記の表を参照ください。
UINT state キーボード動作を表すマクロ
WPARAM wp ASCIIコードまたは仮想キーコード
LPARAM lp
引数stateの動作一覧
マクロ 動作
WM_CHAR キー動作がなされた
引数wpの定義一覧
マクロ 動作
VK_RETURN Enterキー
VK_SPACE スペースキー
※他のシステムキーについてはwinuser.hファイルに定義されているので必要に応じて参照ください。
※lpは高度なので使うことはありません。必要に応じて各自調べてください。

movieクラス

ウィンドウのマルチメディア制御を行う関数群

変数 意味 備考
unsigned uElapse 更新秒[msec] uElapse[msec]毎にevent.Calculate()に登録した関数を実行します。
絶対的ではなく環境に依存します。CPU使用率100%の場合、それ以上の速度で実行はできません。
備考
スレッドを再生させます。
備考
スレッドを停止させます。
備考
スレッドを停止させ、event.Init()で登録した関数を呼び出します。
備考
1フレームだけ再生させます。

DRAW_PS描画関数

引数 意味 備考
int fnPenStyle スタイル ペンを設定する関数
色はRGB(R,G,B)のように指定します。
R,G,Bは0〜255の範囲で数値が低いほど暗く、高いほど明るくなります。
赤はRGB(255, 0, 0)のようになります。
int nWidth 太さ
COLORREF crColor
スタイル 動作 機能
PS_SOLID     
PS_DASH -------
PS_DOT ・・・・・・・
PS_DASHDOT -・-・-・-
PS_DASHDOTDOT -・・-・・-
PS_NULL 透明(楕円や長方形の枠線を描きたくない時に使用)
引数 意味 備考
int fnStyle スタイル ブラシを設定する関数
色はRGB(R,G,B)のように指定します。
COLORREF crColor
スタイル 動作 機能
BS_SOLID べた塗り
HS_BDIAGONAL 45度の右下がりのハッチ
HS_CROSS 水平と垂直のクロスハッチ
HS_DIAGCROSS 45度のクロスハッチ
HS_FDIAGONAL 45度の右上がりのハッチ
HS_HORIZONTAL 水平ハッチ
HS_VERTICAL 垂直ハッチ
BS_NULL 空白
引数 意味 備考
double x1 始点のx座標 線を表示する関数
double y1 始点のy座標
double x2 終点のx座標
double y2 終点のy座標
引数 意味 備考
int x 点のx座標 点を表示する関数
色はRGB(R,G,B)のように指定します。
int y 点のy座標
COLORREF crColor
引数 意味 備考
double x1 始点のx座標 ベクトルを表示する関数
double y1 始点のy座標
double x2 ベクトルのx成分
double y2 ベクトルのy成分
引数 意味 備考
double x1 左上のx座標 長方形を表示する関数
double y1 左上のy座標
double x2 右下のx座標
double y2 右下のy座標
引数 意味 備考
double x1 外接する長方形の左上のx座標 楕円を表示する関数
double y1 外接する長方形の左上のy座標
double x2 外接する長方形の右下のx座標
double y2 外接する長方形の右下のy座標
引数 意味 備考
int x 表示位置のx座標 テキストを表示する関数
int y 表示位置のy座標
char* str 文字列ポインタ
備考
軌跡を消去する関数

beach描画関数

引数 意味 備考
double x1 視点のx座標 カメラを設定する関数
double y1 視点のy座標
double z1 視点のz座標
double x2 焦点のx座標
double y2 焦点のy座標
double z2 焦点のz座標
マウスイベントを設定しない場合以下の動作が可能です。 動作 機能
左ドラッグ 焦点を中心に視点を回転させます
右ドラッグ 焦点を平行移動させます
左右ドラッグ 焦点と視点の距離を、視点の移動で行います
右左ドラッグ 焦点と視点の距離を、焦点の移動で行います
左ダブルクリック 初期焦点、初期視点に戻します

特殊関数

備考
無効領域を発行します

【警告】
DRAW_PSスタイルにおいてevent.Display()に登録する関数の中に、この関数を記述しないでください。
無限ループに陥り画面がフラッシュします。

引数 意味 備考
char* str 文字列ポインタ エラーを起こしたときに終了させる関数。
通常、exit(1)を利用しても終了は可能ですが、ウィンドウアプリケーションにおいては行儀が悪いのでこの関数を利用します。
strにエラー内容を指定するとメッセージボックスが立ち上がりエラーが起きたことを知らせてから終了します。
またstrにNULLを指定するとメッセージボックスは立ち上がらず、すぐに終了します。

作成日:2009年2月25日
更新日:2009年3月31日

タグ:

+ タグ編集
  • タグ:
最終更新:2010年05月28日 01:45