Accueil > > > CONVERTISSEUR DE MESURES D'ANGLES
CONVERTISSEUR DE MESURES D'ANGLES
Information sur la source
Description
Voici ce que je pourrais appeler un «convertisseur de mesures d'angles». Par exemple, convertir x° en radians ou en grad, et vice-versa. Son utilisation est simple: indiquer une valeur à convertir ainsi que son unité de mesure, indiquer l'unité de mesure dans laquelle on veut convertir la valeur, reste qu'à cliquer sur "Convertir la valeur" et le tour est joué :)
Source
- <html>
- <title>:: Convertisseur de mesures d'angles ::</title>
-
- <script language=JavaScript>
- <!--
- window.resizeTo(400, 100)
-
- var totalList = [360, 2*Math.PI, 400] // La mesure d'un angle complet en degré, en radians et en grad.
-
- function mainFunc() {
- var v1 = GE("value1").value
- if (v1 == "") { // Si le champs est vide, donner la valeur zéro
- v1 = "0"
- }
-
- if (v1.lastIndexOf("0") == 0 && parseFloat(v1) >= 1) { // Enlever le zéro au début si v1 >= 1
- v1 = v1.substring(1, v1.length)
- }
-
- GE("value1").value = v1
-
- var n = parseFloat(v1) // La mesure de l'angle à convertir
- var type1 = GE("type1").selectedIndex // L'unité de l'angle à convertir
- var type2 = GE("type2").selectedIndex // L'unité de l'angle équivalent que l'on cherche
-
- GE("value2").value = convert(n, totalList[type1], totalList[type2])
- }
-
- function convert(n, total1, total2) {
- return (n*total2)/total1
- }
-
- function GE(id) { // Pour raccourcir le code, tout simplement :)
- return document.getElementById(id)
- }
- //-->
- </script>
-
- <body bgcolor=#eeeeee><center>
-
- <form>
- <input type=text onkeyup=mainFunc() id=value1 size=10>
- <select id=type1 onclick=mainFunc()>
- <option value=0>Deg</option>
- <option value=1>Rad</option>
- <option value=2>Grad</option>
- </select>
-
- =
-
- <input type=text onkeyup=mainFunc() id=value2 size=10 style=background-color:black;color:white; readonly>
- <select id=type2 onclick=mainFunc()>
- <option value=0>Deg</option>
- <option value=1>Rad</option>
- <option value=2>Grad</option>
- </select>
-
- <br>
- </form>
-
- </center></body>
- </html>
<html>
<title>:: Convertisseur de mesures d'angles ::</title>
<script language=JavaScript>
<!--
window.resizeTo(400, 100)
var totalList = [360, 2*Math.PI, 400] // La mesure d'un angle complet en degré, en radians et en grad.
function mainFunc() {
var v1 = GE("value1").value
if (v1 == "") { // Si le champs est vide, donner la valeur zéro
v1 = "0"
}
if (v1.lastIndexOf("0") == 0 && parseFloat(v1) >= 1) { // Enlever le zéro au début si v1 >= 1
v1 = v1.substring(1, v1.length)
}
GE("value1").value = v1
var n = parseFloat(v1) // La mesure de l'angle à convertir
var type1 = GE("type1").selectedIndex // L'unité de l'angle à convertir
var type2 = GE("type2").selectedIndex // L'unité de l'angle équivalent que l'on cherche
GE("value2").value = convert(n, totalList[type1], totalList[type2])
}
function convert(n, total1, total2) {
return (n*total2)/total1
}
function GE(id) { // Pour raccourcir le code, tout simplement :)
return document.getElementById(id)
}
//-->
</script>
<body bgcolor=#eeeeee><center>
<form>
<input type=text onkeyup=mainFunc() id=value1 size=10>
<select id=type1 onclick=mainFunc()>
<option value=0>Deg</option>
<option value=1>Rad</option>
<option value=2>Grad</option>
</select>
=
<input type=text onkeyup=mainFunc() id=value2 size=10 style=background-color:black;color:white; readonly>
<select id=type2 onclick=mainFunc()>
<option value=0>Deg</option>
<option value=1>Rad</option>
<option value=2>Grad</option>
</select>
<br>
</form>
</center></body>
</html>
Conclusion
Je me suis basé sur un fait: pour que 2 angles soit identiques, le rapport entre la mesure de l'angle et celle d'un angle complet doit être constant. On a donc les égalités suivantes: a°/360° = b rad/2pi rad = c grad/400 grad. À partir de cette égalité, si on connais une seule valeur, il est facile de déduire les autres. Voilà en gros le fonctionnement de mon code.
Petit problème de précision, on ne peut pas exprimer les valeurs en fractions..
PS: J'ai testé mon code seulement sur IE 6, il se peut qu'il y ait des incompatibilités avec d'autres navigateurs. Désolé si cela se produit, la portabilité n'est pas mon fort.. ;)
Historique
- 11 mars 2006 06:55:47 :
- J'avais mis le niveau à 3.. alors que ce code n'a rien d'expert:P
- 12 mars 2006 23:16:22 :
- Suppression du bouton, tout se fait maintenant automatiquement lorsque l'on entre un chiffre ou que l'on modifie un unité de mesure.
- 12 mars 2006 23:39:08 :
- Règlé un petit détail gênant avec le zéro, et enlevé le "try, catch" car il n'était pas nécessaire
- 13 mars 2006 22:45:21 :
- Il y avait une erreur qui se produisait lorsqu'on vidais le champs, mais plus maintenant.
- 24 mars 2006 02:54:45 :
- Correction de l'erreur qui fait en sorte que le premier chiffre s'efface peu importe où on met le zéro
Sources du même auteur
OUTIL DE RECHERCHE SIMPLE ET PARAMÈTRABLEOUTIL DE RECHERCHE SIMPLE ET PARAMÈTRABLEIl s'agit en fait d'une application (*.hta) qui permet de rechercher sur le Web beaucoup plus rapidement et plus efficacement, tout en s'adaptant à la...
PROTOTYPE DE DRAG'N DROPPROTOTYPE DE DRAG'N DROP Un code qui, je crois, pourra servir à la réalisation de projets. Comme le titre l'indique, il s'agit d'un prototype de drag'n drop. Je l'ai simplifié...
MENU DYNAMIQUE HORIZONTAL SIMPLEMENU DYNAMIQUE HORIZONTAL SIMPLEC'est un menu, différent de mon dernier car, dans celui-ci, les sous-menus s'affichent à coté des menus au lieu d'en dessous. Aussi, on peut définir s...
MENU DYNAMIQUE VERTICAL AVEC EFFET BOUTONMENU DYNAMIQUE VERTICAL AVEC EFFET BOUTON Son utilité est la meme que tout autre menu. Sauf que celui-ci est, je pense, relativement court et facile à comprendre à comparer au autres. C'est l...
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
affichage "en temps et en heure" [ par bultez ]
[size=1][b][brown]Bonjour à tous[black]les "input text" ne s'affichent qu'en fin de la routinewindows.status au fur et à mesure de l'avancementest-ce
Mesure de taille utile d'une fenêtre [ par silef ]
Salut,J'ai un problème en javascript, je n'arrive pas à mesurer la taille utile de ma fenêtre. C'est à dire la fenetre qui est affiché à l'écran + le
Cacher des fonctions javascripts [ par ypothier ]
Bonjour, j'essaie de camoufler des fonctions javascripts en php et / ou asp. Je veux que l'utilisateur soit en mesure de voir le code source, mais que
Convertisseur HTML en BBCode [ par Phil_Free ]
Bonjour à tous,Je cherche un script qui permette de convertir un texte HTML en BBCode.Mon but:- J'ai réalisé un long article en HTML et je dois mainte
événement permanent [ par arnaultp ]
Bonjour à tous!J'ai repris un script ici même qui représente une sorte de manège avec des icones. Ce script m'intéressant bien, j'ai voulu l'améliorer
Trouver les coordonnées du sommet d'un triangle [ par harmonyk ]
Bonsoir, j'avais posté dans le bar au sujet d'une formule sur un triangle rectangle, mais je suis en train de gérer ca via javascript. J'ai pas mal av
|
Derniers Blogs
SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|