dof头文件
#include <vsDOF.h>
1 定义实例
vsNode* myNode; //定义节点实例
vpObject* myObj; //定义带有dof节点的模型实例
vsDOF* myDof; //定义dof节点实例
2 访问模型数据库
//实例化模型实例
myObj=vpObject::find("box");
//实例化节点实例
if (myObj) myNode = myObj ->findNamed("door");
//判断节点是否是dof节点,如果是则强制转换为dof节点,并实例化dof节点实例
if( myNode && myNode->isOfClassType(vsDOF::getStaticClassType()) )
myDof = (vsDOF*)myNode ;
3响应键盘事件,控制dof节点运动
void onKeyInput(vrWindow::Key key, int mod)
{
switch (key)
{
case vrWindow::KEY_ESCAPE: // quit the application
breakFrameLoop();
break;
case vrWindow::KEY_A:
myDof->setRotateP(5,TRUE);
break;
case vrWindow::KEY_S:
myDof->setRotateP(-5,TRUE);
}
}