Accorciare Plus Code
Vicino al punto di riferimento 47.5, 8.5, il Plus Code completo 8FVC9G8F+6X si accorcia in 9G8F+6X: i primi quattro caratteri spariscono, perché la zona vicina li fornisce già. Vengono tolti solo quelli recuperabili con sicurezza. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Codice
- 8FVC9G8F+6X
- Latitudine
- 47,5
- Longitudine
- 8,5
- Codice breve
- 9G8F+6X
- Codice completo
- 8FVC9G8F+6X
- Caratteri rimossi
- 4
- Lunghezza del codice
- 10
Gli Open Location Codes, meglio noti come Plus Codes, trasformano latitudine e longitudine in stringhe brevi che si possono dettare, digitare e stampare senza numeri civici. Un codice completo come eight F V C nine G eight F plus six X è unico a scala globale, ma la condivisione quotidiana avviene quasi sempre all’interno di una città o di un quartiere noti, dove le coppie iniziali si ripetono e solo il blocco finale identifica il punto. Questo accorciatore di Plus Code accetta un codice completo valido più una latitudine e una longitudine di riferimento vicine, misura quanto la riferimento sia prossima al centro della cella e rimuove tante coppie di caratteri iniziali quante ne consente la regola di sicurezza dell’Open Location Code.
Come funziona l’accorciamento del Plus Code rispetto a un luogo di riferimento
Un Open Location Code completo codifica una cella rettangolare sulla Terra con l’alfabeto di venti caratteri dal due al nove e C F G H J M P Q R V W X, con un separatore più obbligatorio dopo otto caratteri. Le prime dieci cifre significative formano coppie di latitudine e longitudine che raffinano la cella per fattori successivi di venti; cifre di griglia opzionali dopo il separatore raffinano ulteriormente.
Quando Lei condivide una posizione in un’area nota, i primi quattro o sei caratteri spesso coincidono per tutti i luoghi vicini, così aggiungono rumore invece di valore.
L’accorciamento non si limita a togliere un prefisso fisso: decodifica il codice completo fino al centro della cella, confronta quel centro con la latitudine e la longitudine di riferimento mediante una metrica di Chebyshev (il massimo della differenza assoluta di latitudine e di longitudine in gradi) e percorre una tabella fissa di risoluzioni di venti, uno, zero virgola zero cinque, zero virgola zero zero due cinque e zero virgola zero zero zero uno due cinque gradi.
Ogni volta che l’intervallo è inferiore al trenta per cento della risoluzione di una coppia, l’algoritmo può rimuovere le coppie iniziali corrispondenti. Quel fattore del trenta per cento è un margine di sicurezza deliberato affinché il codice breve resti la corrispondenza più vicina quando qualcuno lo recupera in seguito da un centro città o da una lettura GPS leggermente diversi. Se il riferimento è lontano, non vengono rimosse coppie e il codice completo viene restituito invariato.
I codici con padding che descrivono solo un’area ampia (con zeri prima del separatore) non possono essere accorciati, perché mancano di cifre di precisione sufficienti per un taglio sicuro.
Dove un accorciatore di Plus Code dimostra il proprio valore
Le app di consegna, servizio sul campo e logistica memorizzano già Open Location Codes completi per porte senza numero civico; quando stampano un’etichetta o inviano un SMS in una città nota servono la forma breve che i conducenti riconoscono già in Google Maps e plus.codes.
I flussi di risposta alle catastrofi e di mappatura umanitaria condividono rifugi temporanei e punti acqua come codici brevi più il nome di un campo o di un distretto, e un accorciatore deterministico garantisce che ogni client —pacchetto mobile offline, edge worker o import di foglio di calcolo— concordi sullo stesso taglio per lo stesso riferimento. Gli sviluppatori che integrano OLC nei moduli possono validare e accorciare in una sola chiamata senza distribuire un’intera libreria open-location-code a ogni client. La validazione fallita non consuma saldo.
Casi d'uso
Condivisione via SMS ed etichette in una città nota
Trasformi un Plus Code completo memorizzato in un codice breve accanto al nome di una città o di un quartiere così che conducenti e clienti vedano la forma compatta già usata nelle app di mappe.
Pacchetti di mappatura offline e umanitaria
Generi gli stessi codici brevi offline per rifugi e punti di rifornimento con un lat/lon di riferimento del campo, così ogni dispositivo recupera in seguito lo stesso codice completo più vicino.
Domande frequenti
Come si accorcia un Plus Code con un luogo di riferimento?
Invii un Open Location Code completo in code più latitudine e longitudine di riferimento finite.
Si può accorciare un codice breve o un codice di area con padding?
No. L’input deve essere un codice completo valido senza zeri di padding.
Quanto deve essere vicino il punto di riferimento?
Vicino al centro della cella del codice. Le coppie iniziali vengono tolte solo finché lo scarto, misurato come la maggiore tra le differenze di latitudine e di longitudine, resta sotto il trenta per cento della dimensione di cella di quella coppia.
Perché il mio Plus Code non è stato accorciato?
Perché il punto di riferimento è troppo lontano dal luogo del codice per togliere qualcosa con sicurezza. In quel caso il codice completo torna invariato e il risultato indica che nessun carattere è stato rimosso.
Devo aggiungere il nome del luogo al codice breve?
Sì. Un codice breve funziona solo accanto alla città o al quartiere per cui è stato accorciato, quindi lo condivida con quel nome. Lo strumento non cerca né inventa nomi di luoghi: la località la aggiunge lei.
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/geo/plus-code-shorten \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"code":"8FVC9G8F+6X","latitude":47.5,"longitude":8.5}'const res = await fetch("https://api.kit.forhosting.com/geo/plus-code-shorten", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"code": "8FVC9G8F+6X",
"latitude": 47.5,
"longitude": 8.5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/plus-code-shorten",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"code": "8FVC9G8F+6X",
"latitude": 47.5,
"longitude": 8.5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/plus-code-shorten", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"code":"8FVC9G8F+6X","latitude":47.5,"longitude":8.5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"code":"8FVC9G8F+6X","latitude":47.5,"longitude":8.5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/plus-code-shorten", 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
{
"code": "8FVC9G8F+6X",
"latitude": 47.5,
"longitude": 8.5
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.plus_code_shorten",
"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
Il risultato è un codice breve compatto pronto da abbinare a un nome di luogo, mentre l’API indica anche se è avvenuto l’accorciamento, quanti caratteri sono stati rimossi e l’intervallo angolare usato. Codici completi non validi, codici di area con padding e coordinate mancanti falliscono con errori invalid_input chiari invece di inventare un frammento ambiguo.
Come funziona l’accorciamento del Plus Code rispetto a un luogo di riferimento
La capacità implementa solo questo percorso aritmetico puro: non cerca toponimi, non chiama API cartografiche e non inventa etichette di località che Lei debba aggiungere da solo.
Contratto di input, forma della risposta e comportamento in caso di errore
I codici con padding di zeri prima del separatore vengono rifiutati con un messaggio che non possono essere accorciati. La latitudine è limitata all’intervallo chiuso da meno novanta a novanta; la longitudine è normalizzata nell’intervallo semiaperto da meno centottanta a centottanta. Campi mancanti, stringhe vuote e numeri non finiti falliscono con messaggi che nominano il campo e non vengono addebitati. Esempio: il codice eight F V C nine G eight F plus six X con latitudine di riferimento quarantasette punto cinque e longitudine otto punto cinque produce il codice breve nine G eight F plus six X dopo aver rimosso i primi quattro caratteri. Invii con POST un corpo JSON con tre campi obbligatori: code, una stringa Open Location Code completa come eight F V C nine G eight F plus six X; latitude, una latitudine di riferimento finita in gradi decimali con segno; e longitude, una longitudine di riferimento finita in gradi decimali con segno. Sono accettati alias per comodità: plus_code, olc, full_code o location_code per il codice; lat, ref_latitude o reference_latitude per la latitudine; lon, lng, ref_longitude o reference_longitude per la longitudine. Il codice viene trimmato e portato in maiuscolo; i codici brevi (separatore prima della posizione otto) e le stringhe che non superano le regole di validità dell’Open Location Code vengono rifiutati con invalid_input indicando il campo. Abbini il codice breve a una stringa di località nella propria interfaccia; questo endpoint non emette mai nomi di città.
Dove un accorciatore di Plus Code dimostra il proprio valore
Poiché l’implementazione è parse puro di livello A, ogni chiamata riuscita costa il prezzo base pubblicato $0.002 senza token di modello né rete in uscita. Mantenga le richieste compatte, fissi short_code e characters_removed nei test, e otterrà Plus Codes brevi riproducibili per etichette, bot di chat e edge worker senza erigere un’infrastruttura di geocodifica propria.
Casi di integrazione
Servizio sul campo e consegna dell’ultimo miglio
Accorci codici OLC a livello di porta rispetto al baricentro di un deposito o di una zona prima di stampare ordini di lavoro, senza chiamare un’API cartografica esterna.
Domande tecniche
Cosa succede se il riferimento è lontano dal codice?
Non vengono rimosse coppie iniziali. short_code coincide con il codice completo, was_shortened è false e characters_removed è zero, così Lei non spedisce mai un frammento ambiguo.
L’API aggiunge un nome di città dopo il codice breve?
No. Taglia solo i caratteri OLC iniziali. Aggiunga Lei la propria etichetta di località (città, distretto o campo) quando visualizza o invia il codice breve.
Quanto costa l’accorciatore di Plus Code?
Lo strumento nel browser è gratuito. Le richieste API usano il saldo prepagato KIT a $0.002 per chiamata riuscita; l’input non valido non viene addebitato.