[Paraview] Using VR-Style input devices

Aashish Chaudhary aashish.chaudhary at kitware.com
Mon Nov 5 17:55:58 EST 2012


Hi Johannes,

However, some issues remain for me:
>
> 1) GUI-Improvements:
>  - It would be nice if one could specify the TrackerTransform via the GUI
>  - The ability to load tracker-configurations from a file would be handy
>  - When connecting tracker-input to objects, it would be nice if only
> compatible properties were displayed.
>

Sure, this is a good suggestion and we wanted to do this but ran out of
time.


>  - It would be nice if the grab tool would work globally, more like the
> mouse,
> and not have to be connected to a specific object.
>

I am not so sure what you are saying here, because currently the grab style
just works on the scene and not on a particular object. Current we don't
perform intersection but you could extend the style to do so.

>
> 2) Display issues:
>  - In a curved screen setup powered by 3 overlapping projectors, the
> perspective seems to be incorrect:
> This can be most easily observed when you move your head past the
> coordinate
> system origin. What I would expect to see is that the z-axis (pointing out
> of
> the screen) points somewhat to the right when my x-position is negative,
> and
> to the left when my x-position is positive. What I actually see is that the
> perspective of the axis-cross does not change.
> What could I have messed up in the configuration that would cause this?
>

is it possible for you to share a movie?

>
>  - When moving a Slice-plane using the tracker
> (SliceOrigin,SliceOrientation),
> the displayed slice plane is not updated. I can see that the plane was
> moved
> on the client window, but the actual slice is not affected. I have to move
> the
> plane a little with the mouse to trigger an update of the slice.
>

Seems like a bug. We recently updated the slice style. Hopefully soon we
will be pushing this branch to master.

>
>  - Grabbing an object only affects the object in the client window, not the
> server view.
> When the Grab tool is connected to an object, I can move that object
> around,
> but I only see this in the client window. On the server side, things are
> totally unaffected by the changes. (I didn't test this one again with the
> new
> git master, so excuse me if it has been fixed since 3.14.1)
>

I see. This particular style is not tested well and was intended for the
testing purposes.

>
> 3) Loose ends
> I didn't find anything I can do with an analog input. Do I have to enable
> some
> special build option to enable those?
>

It depends on the style. If a style needs an analog input, it will use it
if configured correctly. Currently we don't have any interactor style that
uses any analog input. if you do have such requirement, we could help you
write one.

Thanks for your valuable feedback.

Best,



>
> Cheers,
>   Johannes
>
>
> Am 24.10.2012, 17:01:37 schrieb Aashish Chaudhary:
> > Hi Johannes,
> >
> > Very recently, we have improved the VR API and related tools and now
> > the VR plugin comes with a GUI to configure connection managers and
> > interactor styles.
> >
> > The way it works now is that you create a connection manager (lines
> > 475 - 483), which will be generated by the GUI if used, and then for
> > the styles,
> > you would link it with the ID of the proxy and its specific property
> > that you want to control. Now said that the GUI shows you the name of
> > the proxy and not the ID
> > for obvious reasons. Then depending upon the type of the proxy and
> > property you specify a particular input from a HCI device. Currently
> > we support analog, button, and tracker.
> >
> > The wiki here is bit old:
> > http://www.paraview.org/Wiki/ParaView/Users_Guide/CAVE_Display
> > We wrote a source article as well:
> > http://www.kitware.com/source/home/post/66
> >
> > This recent work is not in master yet (hopefully this Friday) but you
> > can checkout this branch: vtk_vr_improvements_new_gui
> > if you want to from paraview stage repository. The branch contains
> > bunch of bug fixes, and API improvements.
> >
> > 475   <VRConnectionManager>
> > 476     <VRUIConnection name="vrui" address="localhost" port = "8555">
> > 477       <Button id="0" name="1"/>
> > 478       <Button id="1" name="2"/>
> > 479       <Button id="2" name="3"/>
> > 480       <Tracker id="0" name="head"/>
> > 481       <Tracker id="1" name="wand"/>
> > 482     </VRUIConnection>
> > 483   </VRConnectionManager>
> > 484   <VRInteractorStyles>
> > 485     <Style class="vtkVRTrackStyle" proxy="267"
> > property="EyeTransformMatrix">
> > 486       <Tracker name="vrui.head"/>
> > 487     </Style>
> > 488     <Style class="vtkVRGrabWorldStyle" proxy="267"
> > property="ModelTransformMatrix">
> > 489       <Tracker name="vrui.wand"/>
> > 490       <Button name="vrui.1"/>
> > 491     </Style>
> > 492    </VRInteractorStyles>
> >
> > On Wed, Oct 24, 2012 at 9:40 AM, Johannes Zarl <johannes.zarl at jku.at>
> wrote:
> > > Hi,
> > >
> > > I'm currently trying to configure ParaView for a CAVE-like environment.
> > > So far I was able to set up the pvservers correctly and even make
> > > headtracking over VRPN work.
> > >
> > > Myself, I'm more of a newbie concerning ParaView, so I'm having some
> > > trouble understanding the state-file and how to define a wand-device so
> > > that ParaView can use it.
> > >
> > > As far as I understand it, the VRPlugin reads the VRConnectionManager
> and
> > > VRInteractorStyles tags from the state-file and makes the connection to
> > > the server.
> > >
> > > The Styles in VRInteractorStyles are supposed to reference a proxy
> name,
> > > that they are then attached to. So in this example:
> > >
> > > <VRInteractorStyles>
> > >
> > >    ...snip...
> > >
> > >   <Style class="vtkVRStyleGrabNTranslateSliceOrigin"
> > >
> > > origin="CutFunction.Origin">
> > >
> > >    <Button name="travel.2"/>
> > >    <Tracker name="travel.wand"/>
> > >
> > >   </Style>
> > >   <Style class="vtkVRStyleGrabNRotateSliceNormal"
> > >   normal="CutFunction.Normal">
> > >
> > >     <Button name="travel.3"/>
> > >     <Tracker name="travel.wand"/>
> > >
> > >   </Style>
> > >
> > > </VRInteractorStyles>
> > >
> > > The state-file should have a node <ProxyCollection name="CutFunction">
> > > defined somewhere?
> > >
> > > How do I define such a CutFunction? What other Proxies are there that
> can
> > > be defined/connected to a tracker/button/analog device?
> > >
> > > Cheers,
> > >
> > >   Johannes
> > >
> > > _______________________________________________
> > > Powered by www.kitware.com
> > >
> > > Visit other Kitware open-source projects at
> > > http://www.kitware.com/opensource/opensource.html
> > >
> > > Please keep messages on-topic and check the ParaView Wiki at:
> > > http://paraview.org/Wiki/ParaView
> > >
> > > Follow this link to subscribe/unsubscribe:
> > > http://www.paraview.org/mailman/listinfo/paraview
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at:
> http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
>



-- 
| Aashish Chaudhary
| R&D Engineer
| Kitware Inc.
| www.kitware.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20121105/7c8a671d/attachment-0001.htm>


More information about the ParaView mailing list