Угол между векторами 360 градусов

Я хочу рассчитать угол между vector3d и другими векторами в 360 градусов

Я пробовал это с vector3d.AngleBetween но это дает результаты в 180 градусов

//Create a new 3d vector from average points
Vector3D vector1 = new Vector3D(averageX, averageY, 0);

//Create reference vector
Vector3D vector2 = new Vector3D(averageX-100, averageY, 0);
Vector3D vectorResult1 = new Vector3D();

vectorResult1 = vector2 - vector1;                       

//Other vector to all points in layer
foreach (XYZ d1 in coord)
 {                                
   Vector3D vector3 = new Vector3D(d1.X, d1.Y, d1.Z);
   Vector3D vectorResult2 = new Vector3D();

   vectorResult2 = vector3-vector1;

   //Define a rotation

   double angleBetween = Vector3D.AngleBetween(vectorResult2, vectorResult1);
 }

1 ответ

Если вы посмотрите документацию, то увидите, что знаковые углы не распространяются в трехмерное пространство, поэтому возвращается угол от 0 до 180 градусов., Это в комментариях.

Другие вопросы по тегам