Hi Robert,

I was running into the "problem" that I think Jason is trying to address with 
his patch. In fact, I was writing a long response explaining how I was hitting 
this "bug"... then I realized that getCameraContainingPosition() (and 
requestWarpPointer() which calls it) accept "master cameras window/eye coords". 
Is this the same as "master camera's context coordinates" (i.e. the coordinate 
system that Viewports are specified in)? If so, then I would say that there is 
a bug and Jason's fix is valid. If these coordinate systems are the same, I can 
send more information elaborating on what the problem is.

If these coordinate systems are different, I would really like to know how to 
convert from context coords to "master cameras window/eye coords". I am 
currently crawling through the "self documenting" (a.k.a. "self obfuscating") 
code trying to divine why/how/where GraphicsWindow and/or 
CompositeViewer/Viewer perform this conversion.

It seems strange that "->getEventQueue()->mouseMotion(x, y)" would expect 
different coordinate systems depending on whether the GUIActionAdapter you are 
using is a GraphicsWindow or a osgViewer::View... which seems to be the case 
based on the coordinate conversion that seems to happen with GraphicsWindow 
events... which allows getCameraContainingPosition() to work properly when 
requestWarpPointer() it is called using max/min values that have been massaged 
by GraphicsWindow/Viewer event processing. I don't know... to be honest, I'm 
just really confused and frustrated.

         -Brad

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=43334#43334





_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to