關於在vp下dof模型驅動的簡單例子

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);


        }
    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章