為了進行動力學計算,用dworldcreate()建立world,在其中生成剛體body,用dworldstep()進行動力學計算。主要用到如下api函式。
dspaceid dhashspacecreate(0) 建立碰撞檢測用space,返回它的id。
djointgroupid djointgroupcreate(0) 生成容納接觸點組的joint group返回其id。
void djointgroupempty(djointgroupid) 清空容納接觸點組的joint group。
dspaceid dspacecollide(0)碰撞檢測函式
最終源**上傳至github上
團隊專案開發日誌(三)
在ode中,動力學計算和碰撞檢測計算是獨立封裝的。其中碰撞檢測庫opcode是標準。在ode中使用碰撞檢測功能的時候需要生成碰撞檢測用的space和動力學計算用的world。物體有兩個屬性 作為動力學計算的對像的body 剛體 和作為碰撞檢測對像的geometry 形狀 body的製作方法 1 bo...
團隊專案開發日誌(二)
繼續學習ode缸體動力學物理引擎開發庫 使用drawstuff畫簡單的形狀,在本次工程中主要用於話冰球和機械手動作點 用圓代替 程式中加入 include 標頭檔案就能使用。以下為繪製球的 const dreal pos1,r1 繪製球 dssetcolor 1,0,0 顏色的設定 紅,綠,藍 各分...
團隊開發日誌一
在我們小組,我和周佩負責機械人模組,其具體要求如下 輸入 目標擊球位置,到達該位置的時間,以及在該位置擊球器的速度向量。輸出 在每個控制週期給出x軸和y軸的實時位置和速度指令。主要引數 x軸和y軸的最大行程 最大速度加速度限制。功能 能夠根據輸入的運動目標指令,實時規劃從當前位置達到目標擊球位置的運...