Robert,

I would agree that this points to an inconsistent use of Traits between 
application types however,

If you pass in the actual window values and not 0 based values there will have 
to be other changes in the osgViewer library made to support this as the 
graphic will be offset from the window. (I know because that was the first 
thing I tried). Also you are saying to anyone that has an MFC application 
developed prior to OSG 3.4.0 (although this change is really an winapi issue 
not MFC) that they can not upgrade to 3.4.0 until someone figures out what 
changes need to occur in the osgViewer library and published them. At that 
point the developer must work modifications into their applications in order to 
upgrade to 3.4.0. I have already noticed users such as [email protected] 
<mailto:[email protected]>  are backporting items from 3.4.0 to 3.2.3 over 
this issue. A simpler solution to the issue than what I sent you would probably 
be to remove the call to areWindowDimensionsChanged() and resized() assuming 
the first returns true in the GraphicsWindowWin32::init() method. I can’t 
really conceive of a use case where a window is resized before it is 
initialized. This check is not in prior versions of OSG.

 

Glen Johnson

Phone: 321-696-3122

Email: [email protected]

 

From: osg-submissions [mailto:[email protected]] 
On Behalf Of Robert Osfield
Sent: Friday, October 23, 2015 6:57 AM
To: OpenSceneGraph Submissions <[email protected]>
Subject: Re: [osg-submissions] OGS 3.4.0 - The view provided by OSG is 
incorrectly positioned within window that has been previously created in 
Windows outside of OSG

 

Hi Glen,

 

I have just done a review of your changes and have come away with the feeling 
that the changes indicate problems elsewhere in the set up of the Traits being 
passed in when an existing window is provided.  It looks to me like the Traits 
x and y values  should be set to the values of the actual window being passed 
in, with the x and y set to the top left of the windows position, not to 0,0 as 
the MFC example does.  

The Traits::x,y,width, height are not viewport values in window coordinates, 
they are coordinates of the window itself relative to the desktop own 
coordinate frame.

It feel like the OSG's MFC example is where the problem lies and this is where 
the problem should be fixed.  Same applies to client applications.

Robert.

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

Reply via email to