Unity 6.3
0 онлайн 1 гость 3 в системе
Вход

Vector2.SignedAngle

Declaration

public static float SignedAngle(Vector2 from, Vector2 to);

Параметры

Параметр Описание
от Вектор, от которого измеряется угловая разница.
до Вектор, по отношению к которому измеряется угловая разница.

Возвращаемое значение

поплавок Знаковой угол в градусах между двумя векторами.

Описание

Получает знаковый угол в градусах между from и to.

Возвращаемый угол — это знаковой угол против часовой стрелки между двумя векторами.
Примечание: возвращаемый угол всегда будет между -180 и 180 градусами, так как метод возвращает наименьший угол между векторами. То есть, он никогда не возвращает угол отражения. Углы рассчитываются из точки начала мира (0,0,0) как вершины.
Дополнительные ресурсы: функция Angle.

using UnityEngine;

public class Vector : MonoBehaviour { //Use these to get the GameObject's positions Vector2 m_MyFirstVector; Vector2 m_MySecondVector;

float m_Angle;

//You must assign to these two GameObjects in the Inspector public GameObject m_MyObject; public GameObject m_MyOtherObject;

void Start() { //Initialise the Vector m_MyFirstVector = Vector2.zero; m_MySecondVector = Vector2.zero; m_Angle = 0.0f; }

void Update() { //Fetch the first GameObject's position m_MyFirstVector = new Vector2(m_MyObject.transform.position.x, m_MyObject.transform.position.y); //Fetch the second GameObject's position m_MySecondVector = new Vector2(m_MyOtherObject.transform.position.x, m_MyOtherObject.transform.position.y); //Find the angle for the two Vectors m_Angle = Vector2.SignedAngle(m_MyFirstVector, m_MySecondVector);

//Draw lines from origin point to Vectors Debug.DrawLine(Vector2.zero, m_MyFirstVector, Color.magenta); Debug.DrawLine(Vector2.zero, m_MySecondVector, Color.blue);

//Log values of Vectors and angle in Console Debug.Log("MyFirstVector: " + m_MyFirstVector); Debug.Log("MySecondVector: " + m_MySecondVector); Debug.Log("Angle Between Objects: " + m_Angle); }

void OnGUI() { //Output the angle found above GUI.Label(new Rect(25, 25, 200, 40), "Angle Between Objects" + m_Angle); } }