• gluPickMatrix和glReadPixels


    gluPickMatrix的使用
    2008年12月03日 星期三 23:40
    void gluPickMatrix(GLdouble x,GLdouble y,GLdouble width,GLdouble height,GLint viewport[4]);

    它是用来根据当前鼠标选择区域生成一个相应的投影矩阵的。这里面头两个参数不是这个选择区域的左上角位置,而是整个区域的中心位置。如果错把它当成左上角,选择的区域就会斜向上有个偏移。OpenGL红宝书上没有区域选择的例子,只有一个通过鼠标点击选择的程序,因而没有说明这个问题。

    同样,在颜色编码拾取的时候,要通过glReadPixel这个函数读取当前在back buffer中的颜色信息:

    void glReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid *pixels);

    这里面的y实际上是整个区域的左下角位置,通常也很容易被人当成是左上角。另外,这些函数的纵坐标和OpenGL环境中的纵坐标是相反的,需要进行翻折。

  • 相关阅读:
    字母统计
    特殊乘法
    一年的第几天
    找中位数
    查找学生信息
    Hdu 1009 FatMouse' Trade
    Hdu 1012 u Calculate e
    Hdu 1005 Number Sequence
    Hdu 1008 Elevator
    Hdu 1003 Max Sum
  • 原文地址:https://www.cnblogs.com/frustrate2/p/2643490.html
Copyright © 2020-2023  润新知