Intersezione di due circonferenze: punti da centri e raggi, gratis
Trovi dove si incrociano due circonferenze partendo da centri e raggi: quelle di raggio 5 con centri in (0, 0) e (8, 0) si tagliano in (4, 3) e (4, -3). Se si toccano ottiene un punto, se non si incontrano un avviso chiaro. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- X1
- 0
- Y1
- 0
- R1
- 5
- X2
- 8
- Y2
- 0
- R2
- 5
- Quantità
- 2
- Relazione
- intersect
- D
- 8
Date due circonferenze nel piano cartesiano, la loro intersezione è l'insieme dei punti che appartengono a entrambe contemporaneamente.
Come due circonferenze si incontrano nel piano
Sia d la distanza euclidea tra i centri. I manuali di geometria classificano la configurazione confrontando d con la somma e la differenza assoluta dei raggi. Quando d è strettamente minore della differenza assoluta dei raggi, la circonferenza minore si trova interamente dentro quella maggiore senza toccarla.
Quando d è uguale alla somma, si toccano esternamente in un unico punto; quando d è uguale alla differenza assoluta, si toccano internamente in un unico punto. Quando la differenza assoluta è strettamente minore di d e d è strettamente minore della somma, le circonferenze si incrociano in esattamente due punti simmetrici rispetto alla retta dei centri. Spostare quel piede di più o meno h nella direzione perpendicolare alla retta dei centri produce i due punti di intersezione, oppure un unico punto quando h è zero.
Poiché il procedimento usa solo aritmetica e una radice quadrata dopo i controlli geometrici, è deterministico, O(1) e privo di solutori iterativi o librerie trigonometriche. Centri coincidenti con raggi uguali ammetterebbero infinite soluzioni e vengono rifiutati anziché approssimati.
Dove compare l'intersezione circonferenza–circonferenza nel lavoro reale
I corsi di geometria analitica delle scuole superiori e dell'università chiedono continuamente di trovare i punti comuni a due circonferenze date; un calcolatore affidabile con un controllo rigoroso della configurazione accelera la correzione dei compiti ed elimina gli errori da foglio di calcolo in cui qualcuno dimentica il caso di contenimento o sbaglia il segno dello spostamento perpendicolare.
Gli schizzi di multilaterazione e il rilievo semplice posizionano una stazione intersecando due archi di distanza da punti di controllo noti; restituire entrambi i candidati con un ordine deterministico consente agli operatori di scegliere il lato fisicamente significativo senza rifare l'algebra a mano. Se in seguito Le servono intersezione circonferenza–retta, intersezioni di sfere in tre dimensioni o fitting di circonferenze da campioni di punti, li tratti come intenti di ricerca separati anziché sovraccaricare questa pagina dedicata alle due circonferenze.
Casi d'uso
Verifica di compiti ed esami
Calcoli i punti reali di intersezione di due circonferenze da centri e raggi, oppure fallisca chiaramente quando non si incontrano.
Schizzi di rilievo e multilaterazione
Intersechi due archi di distanza da stazioni note per recuperare posizioni candidate con un ordine dei punti deterministico.
Assistenti di vincoli per CAD e giochi
Risolva due vincoli circolari o i punti di contatto di hitbox circolari senza reimplementare la matematica dell'asse radicale in ogni strumento.
Domande frequenti
Quanto costa?
Lo strumento del browser è gratuito e funziona in locale.
Come capisco se due circonferenze si intersecano?
Confronti la distanza tra i centri con la somma e la differenza dei raggi. Se sta strettamente tra le due, si tagliano in due punti; se è uguale a una delle due, si toccano in un solo punto, come due di raggio 5 con centri a distanza 10.
Cosa succede se le circonferenze non si incontrano?
Se sono troppo lontane, o se una sta dentro l'altra senza toccarla, il calcolatore lo segnala con un messaggio chiaro invece di restituire un elenco vuoto che sembri una risposta.
E se le due circonferenze sono identiche?
Due circonferenze con lo stesso centro e lo stesso raggio hanno tutti i punti in comune, quindi non esiste una risposta finita. Questo caso viene respinto invece di essere approssimato.
Si può localizzare un punto partendo da due distanze?
Sì. Tracci una circonferenza attorno a ogni stazione nota con la distanza misurata come raggio; l'intersezione fornisce le posizioni possibili, in un ordine fisso per scegliere il lato giusto.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/geom/two-circles-intersection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x1":0,"y1":0,"r1":5,"x2":8,"y2":0,"r2":5}'const res = await fetch("https://api.kit.forhosting.com/geom/two-circles-intersection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x1": 0,
"y1": 0,
"r1": 5,
"x2": 8,
"y2": 0,
"r2": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/two-circles-intersection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x1": 0,
"y1": 0,
"r1": 5,
"x2": 8,
"y2": 0,
"r2": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/two-circles-intersection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x1":0,"y1":0,"r1":5,"x2":8,"y2":0,"r2":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x1":0,"y1":0,"r1":5,"x2":8,"y2":0,"r2":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/two-circles-intersection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"x1": 0,
"y1": 0,
"r1": 5,
"x2": 8,
"y2": 0,
"r2": 5
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.two_circles_intersection",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Campi mancanti, raggi non positivi, circonferenze separate e contenimento stretto senza contatto vengono rifiutati con un chiaro errore invalid_input invece di una lista vuota che sembri una risoluzione riuscita senza punti. Nessuna chiamata di rete, nessun campionamento casuale e nessuna sorpresa in virgola mobile oltre la normale aritmetica IEEE-754 sui sei numeri che Lei fornisce.
Come due circonferenze si incontrano nel piano
Coordinate molto grandi possono comunque superare l'intervallo del double IEEE-754; gli intermedi non finiti falliscono con un messaggio chiaro invece di restituire Infinity nel JSON.
Cosa invia e cosa riceve
Dopo il parsing, il servizio calcola la distanza d tra i centri, la confronta con la somma e la differenza assoluta dei raggi e, oppure fallisce con un messaggio esplicito di separazione o contenimento, oppure costruisce il piede dell'asse radicale e la semicorda. Verifiche di esempio: centri in (0, 0) e (8, 0) con raggi uguali a cinque danno due punti vicino a (4, più o meno tre); raggi uguali a cinque con centri distanti dieci unità sono tangenti esternamente nel punto medio; centri molto più lontani della somma dei raggi falliscono segnalando circonferenze separate. Usi lo strumento gratuito del browser per controlli rapidi, poi chiami lo stesso contratto dagli script quando ha bisogno di valutazioni massive senza reimplementare le convalide numeriche in ogni linguaggio. Alias brevi come cx1, cy1, radius1, center1_x e i nomi corrispondenti della seconda circonferenza sono accettati, così le etichette dei moduli restano compatte senza gestori divergenti. Campi mancanti, stringhe vuote, testo non numerico, NaN, Infinity e raggi non positivi vengono rifiutati con invalid_input e non vengono addebitati. In caso di successo, la risposta JSON restituisce points come un array di uno o due oggetti con x e y arrotondati per una serializzazione stabile, count pari alla lunghezza dell'array, relation impostato su intersect, tangent_external o tangent_internal, la distanza d, l'eco dei sei input normalizzati e method impostato su two_circles_radical_axis, così che log e interfacce didattiche documentino l'algoritmo. Il prezzo dell'API è la base pubblicata di $0.002 per elemento riuscito.
Dove compare l'intersezione circonferenza–circonferenza nel lavoro reale
Poiché questa capacità è un motore di parse puro, la convalida fallita non consuma saldo e le esecuzioni riuscite restano a $0.002 per elemento.
Domande tecniche
Quale formula usa questo calcolatore?
La costruzione dell'asse radicale: distanza d tra i centri, spostamento a = (r1² − r2² + d²)/(2d), semicorda h = √(r1² − a²), poi spostamenti perpendicolari ±. La risposta include method: "two_circles_radical_axis".
Cosa succede se le circonferenze non si intersecano?
Se sono separate (d maggiore della somma dei raggi) o una contiene completamente l'altra senza toccarla (d minore di |r1 − r2|), la richiesta fallisce con invalid_input e un messaggio che descrive la configurazione.
Le circonferenze tangenti contano come successo?
Sì. La tangenza esterna e interna restituisce un unico punto con relation tangent_external o tangent_internal.
E se le due circonferenze sono la stessa?
Stesso centro e raggi uguali ammettono infiniti punti di intersezione; quel caso viene rifiutato con invalid_input invece di inventare una lista finita.