OPENGLのマウスおよびキーボードイベントに関連する関数

1. void glutMotionFunc(void(* func)(int x、int y))

マウスが押されてウィンドウ内を移動したときにglutMotionFuncによって登録されたコールバック関数を呼び出します。xとyは、マウスが押されたときのマウスの位置です。

2. void glutPassiveMotionFunc(void(* func)(int x、int y))

マウスがウィンドウ内を移動したときに、glutPassiveMotionFuncによって登録されたコールバック関数を呼び出します。x、y:マウスダウンタイプ、ウィンドウの左上隅に対するカーソルの位置(ピクセル単位)。

3. void glutKeyboardFunc(void(* func)(unsigned char key、int x、int y))

この関数は、キーボードのASCIIコードで表すことができるキー押下イベントを処理するために使用できます。keyはこのキーのASCIIコードであり、xとyはウィンドウの左上隅に対するマウスの位置です。キーが押されました。

4. void glutSpecialFunc(void(* func)(int key、int x、int y))

この関数は、いくつかの特別なキー(F1、F2など)によって押されたイベントを処理するために使用されます。パラメータkeyはキー番号です。これらの定数はglut.hで事前定義されています。

#define GLUT_KEY_F1          1
#define GLUT_KEY_F2          2
#define GLUT_KEY_F3          3

glut.hファイルで表示したり、表示用にキー値を直接出力したりできる、事前定義されたキーが多数あります。同様に、xとyも現在のマウスの位置です。

5. void glutMouseFunc(void(* func)(int button、int state、int x、int y))

この関数は、マウスの左ボタンと右ボタン、および中ボタンの押下のイベントを処理するために使用されます。ボタンは、押されたマウスボタンのキー位置情報を保存します。glut.hには、次の定義があります。

#define GLUT_LEFT_BUTTON    0
#define GLUT_MIDDLE_BUTTON  1
#define GLUT_RIGHT_BUTTON    2

#define GLUT_DOWN        0
#define GLUT_UP          1

パラメータの状態は、このイベントが発生したときにキーが押されたか離されたかを示します。
パラメータxとyは、現在のマウスの位置を表します。

6. void glutPassiveMotionFunc(void(* func)(int x、int y))

この関数は、マウスボタンが押されていないときにマウスドラッグのイベントを処理します。マウスをドラッグすると、この関数はフレームごとに1回呼び出されます。

7. void glutEntryFunc(void(* func)(int state))

この関数は、マウスがウィンドウを出たり入ったりしたときのイベントを処理します。パラメータ状態の値は、glut.hで定義されています。

#define GLUT_LEFT        0
#define GLUT_ENTERED      1

8. int glutGetModifiers(void)

この関数の戻り値は、glut.hの3つの事前定義された定数の1つ、またはそれらの組み合わせです。3つの定数は次のとおりです。

GLUT_ACTIVE_SHIFT: 返回它,当按下SHIFT键或以按下CAPS LOCK,注意两者同时按下时,不会返回这个值。
GLUT_ACTIVE_CTRL: 返回它,当按下CTRL键。
GLUT_ACTIVE_ATL:返回它,当按下ATL键

おすすめ

転載: blog.csdn.net/Miha_Singh/article/details/84997067