何度も失礼いたします。
すみません。お願いします。
いま、原点(0,0,0)からベクトルA(10,0,0)に重なるMeshシリンダを
ベクトルB(0,10,0)方向に回転させたいとします。
その時の、回転方法を求める式が知りたいです。

Vector3 a = new Vector3(0.0f,0.0f,0.0f);
Vector3 b = new Vector3(0.0f,90.0f,0.0f);

floatdot = Vector3.Dot( a , b );
Vector3cro = Vector3.Cross( a , b );
cro.Normalize();

Quaternion tmp_QT = new Quaternion(cro.x,cro.y,cro.z,dot);
Matrix tmp = Matrix.RotationQuaternion(tmp_QT);

とんでもない間違いしているような気もしますが・・・・。
どこがおかしいのかお教えください。