Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Module : java.base - Package : java.lang - Classe : StrictMath
Version documentée : Java SE 17

Méthode « StrictMath.atan2 »

Signature

public static native double atan2( double y,  double x );

Description

Cette méthode permet de calculer l'arc tangente de y/x (ou x et y représentent les coordonnées d'un point dans le plan). Les signes des deux variables sont utilisés pour déterminer le quadrant du résultat.

En mathématiques, l'arc tangente est la fonction inverse de la fonction tangente (fonction tan en C). L'arc tangente d'un nombre flottant réel est donc l'angle pour lequel la fonction tangente calcule la valeur passée en paramètre. L'angle retourné sera compris entre -π et π.

la figure suivante montre les liens entre la projection d'un angle sur le cercle trigonométrique et les fonctions sinus, cosinus et tangente.
Quelques rappels de trigonométrie

Paramètres

ParamètreTypeDescription
y
double
L'ordonnée du point pour lequel calculer l'arc tangente.
x
double
L'abscisse du point pour lequel calculer l'arc tangente.

Valeur de retour

La valeur de retour est de type double. La méthode renvoie Double.NaN si l'une des valeurs spécifiées en paramètre value est NaN (Not a Number). Sinon, elle renvoie la valeur d'un angle compris entre -π/2 et π/2 (donc exprimé en radians).

Exemple de code

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
import java.util.InputMismatchException;
import java.util.Scanner;

public class Sample {
    
    public static void main( String[] args ) {

        // La classe Scanner permet de lire des données dans un flux textuel.
        // Dans cet exemple, le scanner est connecté à la console (System.in).
        try ( Scanner scanner = new Scanner( System.in ) ) {
            System.out.print( "Saisir l'abscisse du point permattant le calcul d'atan2 : " );
            double x = scanner.nextDouble();                    

            System.out.print( "Saisir l'ordonnée du point permattant le calcul d'atan2 : " );
            double y = scanner.nextDouble();                    

            System.out.printf( "L'angle de cette tangente vaut : %f radians\n", StrictMath.atan2( y, x ) );
        } catch( InputMismatchException exception ) {
            System.err.println( "Votre saisie ne correspond pas à une valeur flottante." );
            System.err.printf( "Veuillez respecter le format %.1f\n", 0.5 );
        }
        
    }
    
}
Exemple d'utilisation de la méthode StrictMath.atan2

Et voici un exemple d'exécution de ce programme :

Saisir l'abscisse du point permattant le calcul d'atan2 : 1
Saisir l'ordonnée du point permattant le calcul d'atan2 : 1
L'angle de cette tangente vaut : 0,785 radians
le scanner tient compte des paramètres régionaux. Si votre poste est localisé en France, veuillez utiliser la virgule comme séparateur de partie décimale.

Disponible depuis

1.0

Voir aussi

Méthode StrictMath.acos
Méthode StrictMath.asin
Méthode StrictMath.atan
Méthode StrictMath.cos
Méthode StrictMath.sin
Méthode StrictMath.tan
Les fonctions atan2,atan2f et atan2l en C
La fonction atan2 en Python