Distanza punto-retta
L'origine dista esattamente 1 unità dalla retta 3x + 4y − 5 = 0. Inserisca i tre coefficienti della retta e un punto per ottenere la distanza minima, il suo segno e se il punto sta sulla retta, per distanze di rispetto, muri o compiti. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- A
- 3
- B
- 4
- C
- -5
- Coordinata X del punto
- 0
- Coordinata Y del punto
- 0
- Distanza
- 1
- Distanza con segno
- -1
- Norma
- 5
La distanza perpendicolare di un punto da una retta è il percorso più breve da quel punto a qualsiasi posizione sulla retta infinita. Le serve quando un topografo verifica il franco rispetto al confine di un lotto, uno studente controlla i compiti sull'equazione generale della retta, una pipeline di giochi o CAD misura l'offset da un muro definito da ax più by più c uguale a zero, oppure un pianificatore robotico mantiene un end-effector lontano da un vincolo lineare. Questa capacità accetta i cinque numeri a, b, c, x e y, rifiuta il caso degenere in cui a e b sono entrambi zero (quella equazione non è una retta) e restituisce la distanza non negativa insieme alla distanza con segno, la lunghezza della normale e se il punto si trova già sulla retta.
Che cos'è la formula e come funzionano i numeri
Scriva la retta infinita in forma generale (cartesiana) come a per x più b per y più c uguale a zero. La coppia (a, b) è un vettore normale alla retta: punta perpendicolarmente a ogni direzione che resta sulla retta. La lunghezza di quella normale è la norma euclidea sqrt di a al quadrato più b al quadrato.
Per un punto di interrogazione (x, y), sostituisca le coordinate nel lato sinistro per ottenere il residuo a per x più b per y più c. Il valore assoluto di quel residuo diviso per la lunghezza della normale è esattamente la distanza perpendicolare dal punto alla retta. Quando il residuo è zero, il punto soddisfa l'equazione della retta e la distanza è zero.
Un controllo classico è la retta tre x più quattro y meno cinque uguale a zero (normale 3-4-5) e l'origine: valore assoluto del residuo cinque, norma cinque, distanza uno. Ogni passo è aritmetica elementare e una radice quadrata (o hypot), quindi non vi è iterazione, campionamento, dipendenza dall'orologio di parete, né necessità di pendenza o intercetta nel contratto di ingresso.
Casi d'uso
Franco e arretramento rispetto a un confine lineare
Misuri quanto una struttura, un percorso o una lettura di sensore distano da una linea di rilievo, un muro o un bordo di proprietà espressi in forma generale.
Offset in giochi, CAD e robotica rispetto a un vincolo a muro
Calcoli l'offset laterale di un personaggio, un vertice di mesh o un end-effector rispetto a una retta di piano infinito usata come vincolo di collisione o di guida.
Domande frequenti
Qual è la formula della distanza di un punto da una retta?
Il valore assoluto garantisce una lunghezza non negativa.
Che cos'è la distanza con segno?
La distanza con segno è (ax+by+c)/sqrt(a²+b²). Il suo segno indica in quale semipiano si trova il punto rispetto alla normale orientata (a,b); la magnitudine coincide con la distanza ordinaria.
Funziona per un segmento di retta?
No. Questa capacità misura la distanza alla retta infinita. La distanza più breve a un segmento finito richiede clamp agli estremi ed è un problema diverso.
La calcolatrice di distanza punto-retta è gratuita?
Lo strumento del browser è gratuito e gira in locale.
E se i primi due coefficienti sono entrambi zero?
Allora l'espressione è solo una costante e non descrive alcuna retta. Il calcolatore la rifiuta invece di inventare una distanza, quindi controlli che almeno uno dei primi due coefficienti sia diverso da zero.
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/point-line-distance \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":3,"b":4,"c":-5,"x":0,"y":0}'const res = await fetch("https://api.kit.forhosting.com/geom/point-line-distance", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 3,
"b": 4,
"c": -5,
"x": 0,
"y": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/point-line-distance",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 3,
"b": 4,
"c": -5,
"x": 0,
"y": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/point-line-distance", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":3,"b":4,"c":-5,"x":0,"y":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":3,"b":4,"c":-5,"x":0,"y":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/point-line-distance", 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
{
"a": 3,
"b": 4,
"c": -5,
"x": 0,
"y": 0
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.point_line_distance",
"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.
Limiti
max_abs | 1000000000000 |
min_norm | 1e-15 |
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
I risultati sono JSON deterministico—senza sistema di algebra computazionale, senza semi casuali e con la stessa funzione pura di risoluzione nello strumento gratuito del browser e nel percorso API prepagato—, così che controlli dei compiti, script di valutazione e pipeline di produzione vedono sempre gli stessi numeri.
Che cos'è la formula e come funzionano i numeri
Quando a e b sono entrambi zero, l'espressione si riduce alla costante c e non definisce affatto una retta—questo strumento restituisce invalid_input invece di inventare una distanza. Un altro controllo è qualsiasi punto noto per giacere sulla retta: la distanza deve essere zero e on_line vero.
Come chiamare l'API e cosa torna indietro
La usi per pipeline di compiti di geometria, script di franco in cantiere, strumenti di livello di gioco, sandbox di preparazione ai colloqui, controlli di offset GIS o qualsiasi flusso che necessiti di una distanza punto-retta riproducibile senza installare un pacchetto di algebra computazionale su ogni macchina. Invii un corpo JSON con cinque campi numerici. Il campo a è il primo coefficiente della retta; gli alias A e coeff_a sono accettati. Il campo b è il secondo coefficiente; gli alias B e coeff_b hanno lo stesso significato. Il campo c è il termine costante; gli alias C e coeff_c sono accettati. Il campo x è la coordinata orizzontale del punto; funzionano gli alias x0, px e point_x. Il campo y è la coordinata verticale; funzionano gli alias y0, py e point_y. In caso di successo la risposta ripete a, b, c, x e y, aggiunge distance (non negativa), signed_distance (positiva o negativa secondo il lato della normale orientata su cui si trova il punto), on_line (vero quando la distanza è zero), norm (sqrt di a al quadrato più b al quadrato), method impostato a perpendicular, e un breve blocco formula che documenta le forme chiuse. La validazione fallita—campo obbligatorio mancante, numero non finito, valore fuori dai limiti assoluti pubblicati, o coppia a e b entrambi zero—restituisce invalid_input e non viene mai addebitata. Il prezzo è un forfait di $0.002 per richiesta riuscita con voce unitaria e prezzo marginale unitario zero.
Consigli pratici, limiti e ricerche correlate
Se la retta è data da due punti (x1, y1) e (x2, y2), converta prima: a vale y1 meno y2, b vale x2 meno x1, c vale x1 per y2 meno x2 per y1 (o qualsiasi multiplo non nullo). Nell'insegnamento, preferisca esempi accoppiati: tre-quattro-meno-cinque all'origine per distanza uno; un punto sulla retta per distanza zero; e a uguale a b uguale a zero per dimostrare il rifiuto duro che protegge i chiamanti da una non-retta. Questa pagina si rivolge a chi cerca una calcolatrice di distanza punto-retta o distanza perpendicolare a ax più by più c uguale a zero; non è uno strumento di distanza a un segmento—la distanza più breve a un segmento finito richiede logica di clamp fuori portata qui. Preferisca questa capacità quando dispone già della forma generale di una retta infinita. Mantenga coefficienti e coordinate entro l'intervallo assoluto pubblicato fino a un bilione affinché i prodotti intermedi restino finiti in doppia precisione IEEE sul Worker e nel browser. Le unità sono quelle che Lei passa—metri, piedi o unità di gioco—purché a, b, c, x e y siano coerenti con una sola unità di lunghezza per il risultato di distanza; l'API non converte le unità per Lei. Poiché la formula richiede solo cinque scalari, gli studenti possono ricalcolare a mano residuo e hypot con interi piccoli e allinearsi all'API riga per riga. I task falliti che restituiscono invalid_input non consumano saldo prepagato, il che mantiene economici gli script esplorativi quando gli utenti digita no una normale nulla imparando il contratto. I controlli andata e ritorno sono semplici: dopo la risoluzione, confermi che distance uguaglia il valore assoluto di signed_distance, che on_line è vero esattamente quando distance è zero, e che norm al quadrato uguaglia a al quadrato più b al quadrato entro la tolleranza floating.
Casi di integrazione
Controlli di compiti ed esami sulla distanza punto-retta
Assegni agli studenti una retta ax+by+c=0 e un punto; confronti la distanza perpendicolare calcolata a mano con un risultato deterministico dell'API o del browser gratuito.
Domande tecniche
Perché a e b entrambi zero vengono rifiutati?
Se a=b=0 l'equazione si riduce a c=0 o a una contraddizione e non definisce una retta. Questo strumento restituisce invalid_input al posto di una distanza senza senso.