ForHosting KIT · Matematica

Calcolatrice di distanza 3D

Tra (1,5; 2,5; 3,5) e (4,5; 6,5; 8,5) gli scarti sono 3, 4 e 5, quindi la distanza in linea retta è 7,07106781187. Inserisca due punti qualsiasi nello spazio e ottenga questa lunghezza insieme allo scarto su ciascun asse. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
X1
1,5
Y1
2,5
Z1
3,5
X2
4,5
Y2
6,5
Z2
8,5
Ottiene
Dx
3
Dy
4
Dz
5
Distanza
7,0710678119

Lei invia sei numeri e riceve la distanza, i tre scarti sugli assi e la distanza al quadrato, nella stessa unità in cui ha misurato le coordinate. È la generalizzazione naturale del teorema di Pitagora allo spazio — la risposta a «quanto distano questi due oggetti» in volumi, scene e modelli fisici — fornita come un'unica chiamata deterministica, con un errore esplicito ogni volta che una coordinata manca o non è un numero finito.

Da Pitagora alle tre dimensioni

La formula della distanza 3D è il teorema di Pitagora applicato due volte. Prima si riduce la dimensione z: la proiezione del segmento sul piano xy ha lunghezza sqrt(dx² + dy²), esattamente il caso 2D. Tale proiezione e il dislivello verticale dz formano i cateti di un secondo triangolo rettangolo la cui ipotenusa è il vero segmento spaziale, quindi d = sqrt(dx² + dy² + dz²).

Il calcolatore di distanza 3D esegue esattamente questo calcolo e nient'altro. Poiché ogni scarto è elevato al quadrato, l'ordine dei punti è irrilevante: la distanza da A a B è sempre uguale alla distanza da B ad A, e gli scarti negativi si riducono alle stesse lunghezze positive dei cateti. Poiché il risultato è una radice quadrata di una somma di quadrati, è sempre non negativo ed è zero esattamente quando i due punti coincidono.

La risposta riporta le coordinate analizzate e i tre scarti accanto alla distanza, così può verificare con precisione quali input hanno prodotto quale output senza ricalcolare nulla a mano. Questa tracciabilità conta quando una distanza alimenta una soglia di collisione, una tolleranza di qualità o un margine di sicurezza e qualcuno in seguito chiede perché un caso limite è passato o è fallito.

Unità, distanze al quadrato e robustezza numerica

Nessuna conversione viene applicata e nessuna è necessaria, il che significa anche che è Sua responsabilità fornire tutte e sei le coordinate nella stessa unità prima della chiamata. Due dettagli implementativi vale la pena conoscere.

Primo, la distanza al quadrato dx² + dy² + dz² viene restituita insieme alla distanza stessa: quando deve solo ordinare i candidati per vicinanza — il drone più vicino, il sensore più prossimo, il vertice più lontano — confrontare le distanze al quadrato evita del tutto la radice quadrata ed è il trucco standard nei cicli di ricerca del vicino più prossimo su grandi nuvole di punti.

Secondo, la radice quadrata è calcolata con Math.hypot anziché sommando ingenuamente i quadrati, così differenze di coordinate vicine a 10¹⁵⁴ non traboccano verso Infinity sulla strada di una risposta perfettamente finita, e differenze minuscole vicine a 10⁻¹⁵⁴ non si annullano. Gli output sono arrotondati a dodici cifre decimali significative, il che mantiene le risposte stabili e confrontabili tra macchine ed esecuzioni senza sacrificare alcuna precisione che una misura fisica possa giustificare.

Controlli di prossimità e collisione nei motori 3D

Misuri la separazione tra oggetti, waypoint o agenti in giochi e simulazioni, attivando eventi quando la distanza supera una soglia.

Vicino più prossimo nelle nuvole di punti

Ordini le distanze al quadrato da un punto di interrogazione a sensori, asset o campioni LiDAR e scelga il più vicino senza pagare radici quadrate superflue.

Spazi minimi e tolleranze ingegneristiche

Verifichi che due punti di montaggio, cavi o componenti in un modello CAD o BIM mantengano la separazione minima o massima richiesta.

Quanto costa?

È inoltre gratuito nel Suo browser su questa pagina.

Quale formula utilizza?

La distanza euclidea nello spazio: d = sqrt((x2 - x1)² + (y2 - y1)² + (z2 - z1)²), calcolata con Math.hypot per la robustezza numerica.

In quale unità è il risultato?

Nella stessa unità delle Sue coordinate. Se x, y e z sono metri, la distanza è in metri; nessuna conversione di unità viene applicata.

Perché viene restituita anche la distanza al quadrato?

Perché confrontare le distanze al quadrato è più economico quando deve solo ordinare i candidati per vicinanza — la radice quadrata è superflua per l'ordinamento.

L'ordine dei due punti cambia la distanza?

No. Ogni scarto viene elevato al quadrato prima della somma, quindi la distanza da A a B è sempre uguale a quella da B ad A, e uno scarto negativo conta come uno positivo.

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.

POSThttps://api.kit.forhosting.com/math/distance-3d

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/math/distance-3d \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"x1":1.5,"y1":2.5,"z1":3.5,"x2":4.5,"y2":6.5,"z2":8.5}'
{
  "x1": 1.5,
  "y1": 2.5,
  "z1": 3.5,
  "x2": 4.5,
  "y2": 6.5,
  "z2": 8.5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.distance_3d",
  "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.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

L'API di distanza 3D calcola la distanza euclidea tra due punti nello spazio tridimensionale dalle loro coordinate x, y e z: la lunghezza in linea retta del segmento che unisce (x1, y1, z1) e (x2, y2, z2), data da d = sqrt((x2 - x1)² + (y2 - y1)² + (z2 - z1)²).

Unità, distanze al quadrato e robustezza numerica

L'endpoint è deliberatamente indipendente dalle unità: coordinate in metri producono una distanza in metri, voxel producono voxel e unità di un modello CAD producono unità del modello.

Validazione, errori e come integrarlo

Il contratto è volutamente rigido: ognuna delle sei coordinate deve essere un numero finito. Le stringhe numeriche come '4.5' sono accettate e convertite, perché i dati dei moduli e le query string arrivano come testo nel mondo reale, ma la conversione è esatta: tutto ciò che non si analizza completamente come numero viene rifiutato anziché troncato in silenzio. Un campo mancante, un null, una stringa vuota, un booleano, un array, un'etichetta non numerica come 'up', NaN o ±Infinity producono tutti lo stesso esito — un pulito errore invalid_input che nomina il campo incriminato, e nessun addebito, poiché gli errori del client non vengono mai fatturati. L'integrazione è banale: invii con POST un oggetto JSON con x1, y1, z1, x2, y2 e z2, legga il campo distance dalla risposta e gestisca il codice di errore documentato invece di analizzare messaggi. Se i Suoi dati sono davvero bidimensionali, fissi entrambe le coordinate z allo stesso valore oppure usi l'endpoint 2D dedicato, che richiede solo quattro numeri. Lo stesso codice che gira sul nostro edge gira gratis nel Suo browser su questa pagina, così può prototipare con numeri reali prima di collegare l'API alla Sua pipeline, e paga il $0.002 pubblicato per richiesta solo quando la automatizza.

Cosa succede se una coordinata manca o non è un numero?

Riceve un errore invalid_input che nomina il campo, e la richiesta non viene fatturata. Anche NaN e Infinity vengono rifiutati.

Posso usarlo per punti 2D?

Sì — assegni a entrambi i punti la stessa coordinata z e la formula si riduce al caso 2D, anche se l'endpoint 2D dedicato richiede meno campi.

Leggi la documentazione completa del KIT →