Синтаксис:
Используется csharp
public class ProjectOnVector : MonoBehaviour
{
/// <summary>
/// Точка, из которой опускают перпендикуляр
/// </summary>
[SerializeField]
private Transform tA;
/// <summary>
/// Вектор, на который опускают перпендикуляр
/// </summary>
[SerializeField]
private Transform tB;
void Update ()
{
float cos = Mathf.Cos (Vector3.Angle (tA.position, tB.position) * Mathf.Deg2Rad);
Vector3 p = tA.position.magnitude * cos * tB.position.normalized;
Debug.DrawLine (Vector3.zero, tA.position, Color.green);
Debug.DrawLine (Vector3.zero, tB.position, Color.blue);
/* Перпендикуляр */
Debug.DrawLine (tA.position, p, Color.red);
}
}
{
/// <summary>
/// Точка, из которой опускают перпендикуляр
/// </summary>
[SerializeField]
private Transform tA;
/// <summary>
/// Вектор, на который опускают перпендикуляр
/// </summary>
[SerializeField]
private Transform tB;
void Update ()
{
float cos = Mathf.Cos (Vector3.Angle (tA.position, tB.position) * Mathf.Deg2Rad);
Vector3 p = tA.position.magnitude * cos * tB.position.normalized;
Debug.DrawLine (Vector3.zero, tA.position, Color.green);
Debug.DrawLine (Vector3.zero, tB.position, Color.blue);
/* Перпендикуляр */
Debug.DrawLine (tA.position, p, Color.red);
}
}