1
如何在PhysiJS中查詢物體點的線速度(相對於世界空間),給定物體的線速度和角速度?PhysiJS:如何獲得旋轉物體上給定點處的線速度
我正在考慮爲此目的在對象上創建一個不可見的頂點,但我不認爲API甚至會提供該功能。我是否需要根據物體的平移和旋轉速度來計算自己? (如果是這樣,那麼three.js所或PhysiJS給出這樣做的一個直接的方式?)
從第一原理:
- 鑑於
object.position
(1) - 鑑於世界空間中的點的位置
object.localToWorld(point)
(2) - 鑑於
object.getLinearVelocity()
(3) - 鑑於
object.getAngularVelocity()
(4)
所以我需要:
- 減(1)(2)給點在世界空間偏移(5)
- 使用(4)和(5),以獲得相對點的線速度對象(6)
- 添加(6)和(3),以獲得點
的總線速度對於第一和第三步驟I可以使用three.js所的的Vector3的.sub(Vector3)
和.add(Vector3)
方法,但中間操作是躲避我,雖然我猜想是一種增殖。考慮到(4)可以是歐拉角或四元數,我應該使用哪種操作?
我對矩陣的瞭解非常有限(而且生鏽!),並且四元數不存在。
three.js所的API文檔here
感謝