書式
GLint gluUnProject( GLdouble winX,
GLdouble winY,
GLdouble winZ,
const GLdouble *model,
const GLdouble *proj,
const GLint *view,
GLdouble* objX,
GLdouble* objY,
GLdouble* objZ )
delim $$
引き数
- winX, winY, winZ
- マップされるウィンドウ座標を指定する。
- model
- モデルビュー行列を指定する(glGetDoublev の呼び出しで得られる形式)。
- proj
- 射影行列を指定する(glGetDoublev の呼び出しで得られる形式)。
- view
- ビューポートを指定する(glGetIntegerv の呼び出しで得られる形式)。
- objX, objY, objZ
- 算出されたオブジェクト座標が返される。
説明
gluUnProject は、model, proj, view を使って、 指定されたウィンドウ座標をオブジェクト座標にマップする。 マップされた結果は objX, objY, objZ に格納される。 返り値が GL_TRUE なら成功を示し、返り値が GL_FALSE なら 失敗を示す。座標 (objX, objY, objZ) を計算するために、 gluUnProject は正規化されたデバイス座標に model*proj の逆行列を掛ける。 計算は以下のように行われる: