Math.Atan2() es un método de clase Math incorporado que devuelve el ángulo cuya tangente es el cociente de dos números específicos. Básicamente, devuelve un ángulo θ (medido en radianes) cuyo valor se encuentra entre -π y π. Este es un ángulo en sentido antihorario que se encuentra entre el eje x positivo y el punto (x, y).
Sintaxis:
public static double Atan2(double value1, double value2)
Parámetros:
value1: coordenada y del punto de tipo System.Double .
value2: coordenada x del punto de tipo System.Double .
Tipo de retorno: Devuelve el ángulo Θ de tipo System.Double .
Nota: Un ángulo, θ (medido en radianes), tal que -π ≤ θ ≤ π, y tan(θ) = valor1 / valor2, donde (valor1, valor2) son los puntos en el plano cartesiano. Hay dos condiciones para los valores devueltos:
- Cuando los puntos se encuentran en el plano cartesiano
- Cuando los puntos se encuentran en los límites de los cuadrantes.
A continuación se muestran los programas para demostrar el método Math.Atan2() cuando los puntos se encuentran en el plano cartesiano :
- Programa 1: Si el punto (valor1, valor2) se encuentra en el primer cuadrante, es decir, 0 < θ < π / 2
// C# program to demonstrate the
// Math.Atan2() Method when point
// lies in first quadrant
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(10, 10) * (180 / Math.PI));
}
}
Producción:45
- Programa 2: Si el punto (valor1, valor2) se encuentra en el segundo cuadrante, es decir, π / 2 < θ ≤ π
// C# program to demonstrate the
// Math.Atan2() Method when point
// lies in second quadrant
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(10, -10) * (180 / Math.PI));
}
}
Producción:135
- Programa 3: Si el punto (valor1, valor2) se encuentra en el tercer cuadrante, es decir, -π < θ < -π / 2
// C# program to demonstrate the
// Math.Atan2() Method when point
// lies in third quadrant
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(-10, -10) * (180 / Math.PI));
}
}
Producción:-135
- Programa 4: Si el punto (valor1, valor2) se encuentra en el cuarto cuadrante, es decir, -π / 2 < θ < 0
// C# program to demonstrate the
// Math.Atan2() Method when point
// lies in fourth quadrant
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(-10, 10) * (180 / Math.PI));
}
}
Producción:-45
A continuación se encuentran los programas para demostrar el método Math.Atan2() cuando los puntos se encuentran en los límites de los cuadrantes :
- Programa 1: si valor1 es 0 y valor2 no es negativo, es decir, θ = 0
// C# program to demonstrate the
// Math.Atan2() Method when value1
// is 0 and value2 is not negative
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(0, 10) * (180 / Math.PI));
}
}
Producción:0
- Programa 2: si valor1 es 0 y valor2 es negativo, es decir, θ = π
// C# program to demonstrate the
// Math.Atan2() Method when value1
// is 0 and value2 is negative
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(0, -10) * (180 / Math.PI));
}
}
Producción:180
- Programa 3: Si valor1 es positivo y valor2 es 0, es decir, θ = π / 2
// C# program to demonstrate the
// Math.Atan2() Method value1 is
// positive and value2 is 0
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(10, 0) * (180 / Math.PI));
}
}
Producción:90
- Programa 4: Si valor1 es negativo y valor2 es 0, es decir, θ = -π / 2
// C# program to demonstrate the
// Math.Atan2() Method value1 is
// negative and value2 is 0
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(-10, 0) * (180 / Math.PI));
}
}
Producción:-90
- Programa 5: Si valor1 es 0 y valor2 es 0, es decir, θ = 0
// C# program to demonstrate the
// Math.Atan2() Method value1 is
// 0 and value2 is 0
using
System;
class
Geeks {
// Main method
public
static
void
Main()
{
// using Math.Atan2() Method &
// converting result into degree
Console.Write(Math.Atan2(0, 0) * (180 / Math.PI));
}
}
Producción:0
Punto importante para recordar: si value1 o value2 es NaN , o si value1 y value1 son PositiveInfinity o NegativeInfinity , el método devuelve NaN .
Ejemplo:
// C# program to demonstrate the Math.Atan2() // method when arguments are of type either // NaN, PositiveInfinity or NegativeInfinity using System; class Geeks { // Main method public static void Main() { double val1 = 0; double val2 = Double.NaN; Console.WriteLine(Math.Atan2(val1, val2)); double val3 = Double.NaN; double val4 = Double.NaN; Console.WriteLine(Math.Atan2(val3, val4)); double val5 = Double.NaN; double val6 = Double.PositiveInfinity; Console.WriteLine(Math.Atan2(val5, val6)); double val7 = Double.PositiveInfinity; double val8 = Double.NegativeInfinity; Console.WriteLine(Math.Atan2(val7, val8)); } }
NaN NaN NaN NaN
Referencia: https://msdn.microsoft.com/en-us/library/system.math.atan2
Publicación traducida automáticamente
Artículo escrito por Mithun Kumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA