1. VPRN扫盲
应用程序通过创建一个或多个VRPN应用程序对象来使用一个或多个VRPN设备。
vrpn_Tracker_Remote
vrpn_Poser_Remote
vrpn_Button_Remote
vrpn_Analog_Remote
vrpn_Analog_Output_Remote
vrpn_Dial_Remote
vrpn_ForceDevice_Remote
vrpn_Sound_Remote
下面以vrpn_Tracker为例:
2. VRPN连接
通常,通过调用对象的构造函数并传递要打开的设备的名称来创建每种类型的对象。该名称包括设备名称和服务的网络地址。
例如:要在计算机ioglab.cs.unc.edu上打开名为Tracker0的设备,则执行一下操作:
#include <vrpn_Tacker.h>
vrpn_Tracker_Remote* myTracker = new vrpn_Tracker_Remote("Tracker0@ioglab.cs.unc.edu");
3. 数据更新与处理
每一个设备都只传输三种类型的数据,但是每个数据的个数不一样。
(1)数据处理
定义一个响应跟踪器更新消息的回调处理程序
(2)数据更新
注册的回调函数,当有新的数据从vrpn_server到来时,它就会被调用。
一般此函数定义为静态,表示是所有对象共享的函数。
virtual int register_change_handler(void *userdata, vrpn_TRACKERCHANGEHANDLER handler);
调用上方注册的回调函数
virtual void mainloop();
网友评论