[PyQt] some bugs in opengl examples
Phil Thompson
phil at riverbankcomputing.com
Wed May 27 13:24:02 BST 2009
On Wed, 27 May 2009 10:47:23 +0900, Francis Cho <geburstag at gmail.com>
wrote:
> Hello,
>
> I found some bugs in opengl examples.
>
> 1. Wrong conversion of the original C++ code.
>
> It is in grabber.py.
> I changed as following to get the correct behavior.
>
> FROM
> def resizeGL(self, height, width):
> TO
> def resizeGL(self, width, height):
>
> Before changing the code like the above, the opengl widget portion of the
> window couldn't be shrinked or enlarged correctly.
>>From the original C++ code, we can see that the modified is correct.
>
> 2. OpenGL related error message from grabber.py, hellogl.py and
textures.py
> on mac osx.
>
> I got the following OpenGL related error message from the above three
files
> on mac osx only.
>
> Traceback (most recent call last):
> File "grabber.py", line 131, in resizeGL
> glViewport((width - side) / 2, (height - side) / 2, side, side)
> File "/Library/Python/2.5/site-packages/OpenGL/error.py", line 194, in
> glCheckError
> baseOperation = baseOperation,
> OpenGL.error.GLError: GLError(
> err = 1281,
> description = 'invalid value',
> baseOperation = glViewport,
> cArguments = (0, 0, -1, -1)
> )
>
> I inserted a line to see the value of width and height in resizeGL and I
> could notice that the resizeGL was called twice.
>
> francis-macbook-pro:opengl ycc$ python grabber.py 2>/dev/null
> -1 0
> 179 164
>
> As you can see from above, the first line contains strange values.
> So, I entered the following two lines right after "def resizeGL..." as a
> workarround.
>
> if height < 0 or width < 0:
> return
>
> This was not happened with some old snapshots.
> I forgot the specific name of the snapshots.
Thanks,
Phil
More information about the PyQt
mailing list