标签

2011年6月11日星期六

已知两向量,求旋转矩阵

void CreateRoationMatrix(D3DXMATRIX* out, D3DXVECTOR3& v1, D3DXVECTOR3& v2) 
{  
float angle = acos(D3DXVec3Dot(&v1, &v2)); //得到两向量的夹角  
D3DXVECTOR3 v3;  
D3DXVec3Cross(&v3, &v1, &v2); //差乘求出旋转轴  
D3DXVec3Normalize(&v3, &v3);  
D3DXMatrixRotationAxis(out, &v3, -angle); //得出绕旋转轴旋转angle度角的矩阵 
}

没有评论:

发表评论