Hi Whu,

If you don't like the default behaviour then you'll need to adapt it or
roll your own.  There isn't anyway the OSG can offer all the types of
behaviour end users will want in their specific application, all the osgGA
are simple and general purpose and aren't meant to cover all usage cases.
You have a usage case that doesn't quite fit so you just need to do what
the OSG has been written to allow you to do - write your own camera
behaviours.

Robert.

On 24 September 2014 15:52, whu <wyg030...@163.com> wrote:

>   Dear Robert,
>
>   thanks for your kind answers.
>
>   Due to the eye separation problem, I can not operate continuously.
>
>   I just press the Space key to load the init view-settings, and then
> switch to the next view, and then zoom in.
>
>   Right now,  I  can not implement my own camera manipulator.
>
>   Maybe I  need a solution using the current osg function(though some code
> segement seem high efficiency).
>
>   thanks.
>
>   whu
>
>
>
> At 2014-09-24 22:32:57, "Robert Osfield" <robert.osfi...@gmail.com> wrote:
>
> Hi Whu,
>
> The TrackballManipulator operates in a mode where the virtual eye
> separation is scaled relative to the distance between the eye point and
> center of rotation.  This approach allows one to move around objects of
> completely different scales i.e. whole earth or a single molecule and they
> will sit centered on screen and with a comfortable eye separation.  While
> this approach can be convenient and feel natural it's artificial, in the
> real world our eyes don't actually work this this.  However, even with it
> being an artificial way to manage eye separation it works really nicely for
> a wide range of tasks.  However, it isn't a solution that can work in all
> situations all the time.
>
> In the case when you zoom in right in close to the center of rotation the
> TrackballManipulator has to contend with another problem that is specific
> to manipulators that more around a central point.  If you keep zooming in
> so the look distance is close to zero and if you do nothing about this
> basically for all intents and purposes the eye point stops and the
> manipulator then becomes very unnatural to use as the end user isn't aware
> that the look distance is now near zero.  A work around to this problem is
> to change the zoom in behaviour when you get really close to the central
> point, so rather then keeping on reducing the look distance you maintain
> the look distance and push the central point away from the eye.  This
> workaround is a bit crude but it prevents the worst of artefacts associated
> with the look distance tending to zero.  When this work around is applied
> the virtual eye separation will stop reducing further so this will be a
> small discontinuity in behaviour.
>
> From your description it sounds like the mouse wheel modification of the
> look distances doesn't have this workaround in place, which itself could
> lead to problems if one then tries to pan, or rotate around the very close
> central point, the stereo offsets would also differ to how the mouse button
> drive zoom in behaves.
>
> Is there a solution to this problem?  Well basically you shouldn't keep
> zooming in as you simply can't keep a trackball working seamlessly with
> very small look distances, it's not a case of bugs, it's a case of a
> fundamental limitation with using trackballs when you zoom in too far
> towards the central point things start going wrong and you have to come up
> with workarounds not matter what you do.
>
> In your own application you might be want it behave in a way that makes
> sense for you application, what this might be I cannot say as I have
> absolutely no clue about your usage model.  You are completely free to
> implement your own camera manipulation and management of eye separation and
> if the off the shelf functionality doesn't do exactly what you want then go
> ahead a roll your own.
>
> Robert.
>
>
>
>
>
> On 24 September 2014 15:12, whu <wyg030...@163.com> wrote:
>
>>   Dear all,
>>
>>   I used the stereo mode in my osg program, and the trackball camera
>> manipulator.
>>
>>   But when I try to zoom nearer to the object, the mouse wheel and the
>> right-key operation get  different results.
>>
>>   Using the right key (mouse) to zoom, it seemed that the eye separation
>> changed bigger, and this make Physical discomfort.
>>
>>   Using the mouse wheel to zoom,  the result is right.
>>
>>   I just want to find the reason, because the "eye separation" problem
>> lead to some other trouble.
>>
>>   Can someone give me some suggestions.
>>
>>   Thanks.
>>
>>   whu
>>
>>
>>
>> _______________________________________________
>> osg-users mailing list
>> osg-users@lists.openscenegraph.org
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>
>>
>
>
>
> _______________________________________________
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to