Thread: [PyOpenGL-Users] How to select an object
Brought to you by:
mcfletch
From: duncan d. <dun...@gm...> - 2007-11-13 16:58:02
Attachments:
hellogl.py
|
Hello I am playing with python and pyopengl. I have not any problem to draw the object and so on, but then I'd like to select an already drawn object. The code is attached Running it I get this error: --------- pick3d ---------- - nhits = 0 hit nothing - selectedObjects: Traceback (most recent call last): File "C:\software_personale\openboat\code_snippets\hellogl.py", line 143, in mouseReleaseEvent self.pick3d(event) File "C:\software_personale\openboat\code_snippets\hellogl.py", line 257, in pick3d return self.processBuffer() File "C:\software_personale\openboat\code_snippets\hellogl.py", line 274, in processBuffer print " - selectedObjects: ", self.selected AttributeError: selected As you can see, the function is called in the mouseReleaseEvent (O also tried the mousePressEvent) Any idea (or link) on how I can select an object ? My goal is to be able to select a point and drag it around the viewport, beeing able to get the new position Any hints ? thanks in advance bye Gianluca |
From: Black <py...@bl...> - 2007-11-13 17:46:42
|
It looks like you are generally on the right path, though your probably did want to do the selection on mouse down rather than up.. The error is a misleading one because it has nothing to do with your ability to select things. Quite simply, you are trying to return a list that doesn't exist. The function processBuffer is the only place that self.selected appears, and you never explicitly make it. If you just put a self.selected = [] in your init function, your error will go away. You still won't be able to select things because you have some error in your rendering that I haven't taken the time to track down - but that should get you past this particular error... On Nov 13, 2007, at 11:57 AM, duncan duncan wrote: > Hello > > I am playing with python and pyopengl. > I have not any problem to draw the object and so on, but then I'd like > to select an already drawn object. > > The code is attached > > Running it I get this error: > > --------- pick3d ---------- > - nhits = 0 > hit nothing > - selectedObjects: > Traceback (most recent call last): > File "C:\software_personale\openboat\code_snippets\hellogl.py", line > 143, in mouseReleaseEvent > self.pick3d(event) > File "C:\software_personale\openboat\code_snippets\hellogl.py", line > 257, in pick3d > return self.processBuffer() > File "C:\software_personale\openboat\code_snippets\hellogl.py", line > 274, in processBuffer > print " - selectedObjects: ", self.selected > AttributeError: selected > > > As you can see, the function is called in the mouseReleaseEvent (O > also tried the mousePressEvent) > Any idea (or link) on how I can select an object ? My goal is to be > able to select a point and drag it around the viewport, > beeing able to get the new position > > Any hints ? > > thanks in advance > bye > Gianluca<hellogl.py>-------------------------------------------------- > ----------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a > browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > PyOpenGL Homepage > http://pyopengl.sourceforge.net > _______________________________________________ > PyOpenGL-Users mailing list > PyO...@li... > https://lists.sourceforge.net/lists/listinfo/pyopengl-users |