Convertisseur cartésien vers polaire
Transformez x et y en forme polaire : le point (3, 4) se trouve à 5 unités de l'origine, avec un angle de 0,927295218002 radian. L'angle tombe toujours dans le bon quadrant, et un angle négatif signale un point sous l'axe. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- X
- 3
- Y
- 4
- Rayon
- 5
- Angle
- 0,927295218
- Unité d'angle
- rad
Ce convertisseur de coordonnées cartésiennes en polaires prend un point donné par sa coordonnée horizontale x et sa coordonnée verticale y et renvoie le même point sous forme polaire : le rayon, c'est-à-dire la distance à vol d'oiseau depuis l'origine, et l'angle en radians mesuré dans le sens inverse des aiguilles d'une montre depuis l'axe des x positifs. L'angle est calculé avec l'arctangente à deux arguments, donc il tombe toujours dans le bon quadrant, et les angles négatifs indiquent que le point se situe sous l'axe. Les deux entrées doivent être des nombres finis ; tout le reste est rejeté avec une erreur de validation claire.
De x et y au rayon et à l'angle
Les coordonnées cartésiennes situent un point en avançant le long de deux axes perpendiculaires : x pas vers la droite et y pas vers le haut. Les coordonnées polaires situent exactement le même point autrement : en indiquant à quelle distance il se trouve de l'origine et dans quelle direction. La distance est le rayon, calculé comme l'hypoténuse du triangle rectangle que forment x et y, donc pour le point (3, 4) le rayon vaut exactement 5.
La direction est l'angle, mesuré en radians dans le sens inverse des aiguilles d'une montre depuis l'axe des x positifs, de sorte qu'un point sur l'axe des y positifs se trouve à un angle de π/2, environ 1.5708. Envoyer les deux coordonnées à ce convertisseur de cartésiennes en polaires renvoie les deux valeurs en un seul appel, sans étape intermédiaire à chaîner vous-même.
Comme le rayon provient d'un calcul d'hypoténuse et non d'une racine carrée naïve de la somme des carrés, le résultat reste précis et évite les dépassements même lorsque les coordonnées sont de très grands nombres finis, ce qui compte dans les pipelines scientifiques et d'ingénierie où les coordonnées atteignent couramment des millions.
Pourquoi l'angle utilise atan2 et vit en radians
Une simple arctangente de y divisé par x ne peut pas distinguer un point du premier quadrant d'un point du troisième, car le rapport est identique, et elle échoue complètement lorsque x vaut zéro. L'arctangente à deux arguments, atan2, examine les signes des deux coordonnées, donc l'angle renvoyé pointe toujours vers le bon quadrant et est défini pour tout point sauf l'origine exacte.
Le résultat se situe dans l'intervalle semi-ouvert de -π à π : les valeurs positives signifient que le point est au-dessus de l'axe des x, les valeurs négatives en dessous, exactement π signifie cap à gauche et zéro signifie cap à droite. L'origine est un cas particulier : son rayon est nul et son angle est mathématiquement indéfini, donc ce convertisseur renvoie un angle de zéro par convention plutôt que d'échouer, ce qui garde les pipelines totaux et prévisibles tout en documentant le choix.
Validation, déterminisme et cas d'usage
Chaque coordonnée doit être un nombre fini. Les résultats sont arrondis à douze décimales pour que les comparaisons restent stables entre machines et moteurs JavaScript. Les appelants typiques sont le code de robotique et de jeux qui convertit des vecteurs de joystick ou de capteurs en cap et en magnitude, les outils de physique qui préfèrent la forme polaire pour les problèmes de rotation et les tâches de visualisation de données qui placent des points sur des graphiques radiaux.
Cas d’usage
Cap et distance pour la robotique
Transformez un vecteur de joystick ou de capteur (x, y) en magnitude et en angle de cap en radians que les contrôleurs de moteurs et les planificateurs de trajectoire consomment directement.
Mathématiques pour la physique et l'ingénierie
Passez un vecteur en forme polaire pour séparer la magnitude de la direction avant d'appliquer des équations de rotation ou d'ondes.
Graphiques radiaux et visualisation
Convertissez des points de données en rayon et en angle pour les placer sur des diagrammes polaires, des radars et des cartes de chaleur circulaires.
Questions fréquentes
Combien cela coûte-t-il ?
La même conversion est gratuite dans votre navigateur sur cette page.
Que renvoie-t-il exactement ?
Le rayon (distance depuis l'origine), l'angle en radians dans l'intervalle (-π, π], le marqueur d'unité « rad » et les entrées x et y d'origine.
Pourquoi des radians et pas des degrés ?
Les radians sont ce que les fonctions trigonométriques de tous les grands langages acceptent, donc le résultat alimente le calcul suivant sans conversion. Multipliez par 180/π si vous avez besoin de degrés.
Que se passe-t-il à l'origine (0, 0) ?
Le rayon vaut 0 et l'angle est mathématiquement indéfini, donc le convertisseur renvoie un angle de 0 par convention plutôt que d'échouer.
Quelles entrées sont rejetées ?
Tout ce qui n'est pas un nombre fini : champs manquants, null, booléens, tableaux, chaînes vides ou non numériques, NaN et Infinity. Les chaînes numériques comme « 3.5 » sont acceptées.
L'angle est-il toujours dans le bon quadrant ?
Oui. Il est calculé avec l'arctangente à deux arguments atan2(y, x), qui utilise les signes des deux coordonnées pour placer l'angle dans le bon quadrant.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/math/cartesian-to-polar \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x":3,"y":4}'const res = await fetch("https://api.kit.forhosting.com/math/cartesian-to-polar", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x": 3,
"y": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/cartesian-to-polar",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x": 3,
"y": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/cartesian-to-polar", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x":3,"y":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x":3,"y":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/cartesian-to-polar", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"x": 3,
"y": 4
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.cartesian_to_polar",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
La même conversion s'exécute gratuitement dans votre navigateur sur cette page, et le même code sert l'API payante à $0.002 par requête.
Pourquoi l'angle utilise atan2 et vit en radians
Le radian est l'unité naturelle de cette API car les fonctions trigonométriques de tous les langages de programmation consomment directement des radians, de sorte que la réponse alimente sinus, cosinus ou une matrice de rotation sans étape de conversion.
Validation, déterminisme et cas d'usage
Le endpoint accepte les nombres JSON et les chaînes numériques comme « 3.5 » ou « -2 », ce qui est pratique lorsque les valeurs arrivent comme des champs de formulaire, mais il rejette les null, les chaînes vides, les booléens, les tableaux, le texte NaN et toute valeur infinie, en répondant par une erreur d'entrée invalide qui nomme le champ fautif au lieu de produire silencieusement un angle dénué de sens. Il s'exécute en périphérie en quelques millisecondes, ne conserve rien après la réponse et coûte $0.002 par requête via l'API, tout en restant gratuit de façon interactive dans le navigateur.