[osg-users] Composite viewer & resize

Robert Osfield robert.osfield at gmail.com
Tue Jul 1 05:41:38 PDT 2008


Hi Fabian,

osgViewer::CompositeViewer directs events to camera with focus.  If
you want different behavior you can always override the
CompositeViewer::eventTravesals() method.

Robert.

On Tue, Jul 1, 2008 at 1:31 PM, fabien rioli
<fabien.rioli at tharsis-software.com> wrote:
>
>
> On Tue, Jul 1, 2008 at 12:23 PM, Robert Osfield <robert.osfield at gmail.com>
> wrote:
>>
>> Hi Fabien,
>>
>> Does osgcomposite resize correctly for you? i.e.
>>
>>   osgcompositeviewer cow.osg
>
> Thanks for your answer Robert.
>
> Yes, the composite viewer does work fine for the aspect ratio. The
> projection matrices changes in my example were only here to show that the
> resize event wasn't send to the two viewers.
>
> I work on an application with multiple viewers that needs to shows a grid of
> objects of a setted number of collums and lines.
> I also need to display objects of the same ratio, so I change horizontal and
> vertical space between the objects to have the same number of objecst and
> keep their aspect. Sometimes the viewer with the grid gets the resize event,
> sometimes it's an other one, but never both of them.
>
> Fabien.
>
>>
>> I have just tried resizing and it all three views adjust their aspect
>> ratio correctly.  This relies upon the Camera's projection matrices
>> being resized by the GraphicsContext itself, your own code shouldn't
>> need to handle the resize, unless of course you actually want to
>> implement some custom resize.  You can control the resize behaviour of
>> the projection matrix via the Camera::setProjectionResizePolicy(..)
>> options are:
>>
>>        enum ProjectionResizePolicy
>>        {
>>            FIXED, /** Keep the projection matrix fixed, despite
>> window resizes.*/
>>            HORIZONTAL, /** Adjust the HORIZOTNAL field of view on
>> window resizes.*/
>>            VERTICAL /** Adjust the VERTICAL field of view on window
>> resizes.*/
>>        };
>>
>>
>> Robert.
>>
>>
>> On Tue, Jul 1, 2008 at 10:59 AM, fabien rioli
>> <fabien.rioli at tharsis-software.com> wrote:
>> > Hi All,
>> >
>> > I'm currently having problems with the resize event redistribution with
>> > multiple views (in a composite viewer).
>> > It seems that only one of the viewers receives the resize event.
>> > See the attached example (.cpp) witch illustrate the problem (two
>> > viewers
>> > with a resize handler).
>> > In the resise handlers I change the projection matrix in order to show
>> > witch
>> > view gets the event.
>> > The following sreenshots shows different steps of the test.
>> >
>> > 1.jpg : no event
>> > 2.jpg : a first resize event ( the window have been moved)
>> > 3.jpg : a second resize event ( resise from the bottom right corner)
>> >
>> > From what I have understood from osgViewer/CompositeViewer.cpp (in the
>> > eventTraversal) the viewer witch receives the event is the one who have
>> > the
>> > focus.
>> > I think that because every viewer in the same window is affected by the
>> > resizing, the may have to receive the event each other.
>> > Is this an intended behaviour ?
>> >
>> > Thank you in advance,
>> >
>> > Fabien
>> >
>> > --
>> > Fabien Rioli
>> > www.tharsis-software.com
>> > _______________________________________________
>> > osg-users mailing list
>> > osg-users at lists.openscenegraph.org
>> >
>> > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>> >
>> >
>> _______________________________________________
>> osg-users mailing list
>> osg-users at lists.openscenegraph.org
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>
>
> --
> Fabien Rioli - Directeur Commercial Tharsis-software
> Portable: 06 76 96 59 98
> Paris innovation 5 rue d'Uzès 75002 Paris Fixe: 01 40 13 53 49
> www.tharsis-software.com
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>



More information about the osg-users mailing list