Astuces de recherche...
Home
- Accueil & nouveautés
- Les newsgroups VB
- Téléchargements
- L'équipe
- Nous contacter
- Liens
Rubriques
- Toutes les questions
- Affichage & graphismes
- Algorithmique
- API
- Base de registre
- Bases de données
- Contrôles
- Date & heure
- Déploiement
- Divers
- Erreurs & problèmes
- Fichiers & dossiers
- Généralités
- Impression
- Internet & mails
- Math
- Multimédia
- Réseaux
- Structures de données
- Texte & strings
- VB .Net
- VB Script
- VBA
- Windows

Question 191

Comment convertir entre elles les diverses unités trigonométriques (degrés, grades, radians) ?

Visual Basic, comme la plupart des autres langages de programmation, utilise le radian comme unité pour les fonctions trigonométriques : Sin (sinus), Cos (cosinus), Tan (tangente), Atn (arctangente).

En revanche, dans les interfaces utilisateur, les angles sont plus souvent exprimés en degrés ou en grades ; Il est donc souvent nécessaire de convertir ces diverses unités entre elles.

Formules de conversion

Il est facile de passer d'une unité à l'autre en sachant qu'un angle plein prend les valeurs suivantes : 360 degrés ou 400 grades ou 2PI radians.

Sachant cela, on peut aisément convertir une mesure d'une unité dans une autre. Par exemple :

  • Angle (en degré) = Angle * PI / 180 (en radians)
  • Angle (en radians) = Angle * 180 /PI (en degrés)

Implémentation en VB

Voici 2 fonctions pour la conversion d'angles, de degrés vers radians et de radians vers degrés. On peut utiliser ces 2 fonctions comme base pour écrire les autres formules si nécessaires (grades en radians, etc.).

Const PI As Double = 3.14159265358979

Function ConversionDegreRadian(ByVal angle As Double)

    ConversionDegreRadian = angle * PI / 180
End Function

Function ConversionRadianDegre(ByVal angle As Double)

    ConversionRadianDegre = angle * 180 / PI
End Function

Ces fonctions s'utilisent très simplement, par exemple pour le calcul du sinus d'un angle exprimé en degrés :

    ' Calcul du sinus de 30 degrés
    MsgBox "Le sin de 30 degrés vaut : " & Sin(ConversionDegreRadian(30))
    
    ' Retrouver l'angle (en degrés) à partir de la valeur de la tangente
    MsgBox "l angle dont la tangente vaut 1 est " & ConversionRadianDegre(Atn(1)) & " degrés"

Pour aller plus loin

Voir aussi :

Date de publication : 06 mars 2008
Dernière modification : 06 mars 2008
Rubriques : Math
Mots-clés : unité, trigonométrique, trigo, angles, conversion, convertir, degré, radian, grade, sin, cos, tan, atn, sinus, cosins, tangente, arctangente