2016-01-04 65 views
0

我從來沒有很好的3D比賽。這裏是一張圖片 enter image description here給定2個3D對象,如何計算旋轉Yaw&Pitch來面對物體?

這只是一個MS Paint模型。

圖1只是當前狀態,圖2是我正在嘗試完成的。我希望紅色物體能夠面對綠色物體。

+0

@Ugleh查找「quarternions」 - 對於給定的初始轉換,和目標轉變,我相信他們給了一個「自然」尋找過渡的最佳選擇從一個到其他。儘管如此,我沒有數學來解釋它們。請參閱https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation – Alnitak

回答

0

偏航和俯仰可以按幾個順序應用。在這裏,我假定首先應用偏航(繞圖像中的深度軸旋轉)。根據您的座標系和規格修改以下公式。

偏航可以從剩餘的兩個軸座標差(x和y在這種情況下)來計算:

yaw = atan2(target.x - source.x, target.y - source.y) 

您可能需要基於交換源和目標和/或X和Y的座標系。

然後,間距爲:

pitch = atan(target.z - source.z, sqrt((target.x - source.x)² + (target.y - source.y)²)