ForHosting KIT · Strumenti per sviluppatori

Punto in cella esagonale

Converta una coordinata piana nella cella che la contiene all’interno di una griglia esagonale regolare.

● BetaGratis · nel tuo browser
Usalo da WebAPIEmailTelegramApp presto

Indichi il punto, la dimensione dell’esagono e, se necessario, l’orientamento e l’origine della griglia. Il risultato restituisce indici interi di colonna e riga assiali, utilizzabili direttamente per mappe, giochi, raggruppamenti spaziali, disposizioni procedurali e calcoli di vicinato. La conversione impiega l’arrotondamento in coordinate cubiche, perciò assegna in modo coerente i punti vicini a bordi e vertici senza esaminare tutte le celle né costruire geometrie poligonali.

Definisca la griglia prima di individuare il punto

Una griglia esagonale regolare richiede tre informazioni prima di poter assegnare un punto a una cella. Per prima cosa, inserisca le coordinate piane x e y nello stesso sistema utilizzato dalla griglia. Imposti poi size come distanza tra il centro di un esagono e uno qualsiasi dei suoi vertici. Tale misura è il circumraggio, non la larghezza o l’altezza totale, la distanza fra lati né quella fra centri. Infine scelga l’orientamento. Una griglia pointy presenta un vertice in alto e uno in basso, mentre una griglia flat ha lati orizzontali in quelle posizioni. Il valore predefinito è pointy. In assenza di spostamenti, la cella assiale zero, zero è centrata sulla coordinata piana zero, zero. Utilizzi origin_x e origin_y quando la griglia è traslata. L’origine cambia solo la posizione, senza modificare scala, orientamento o indicizzazione. Tutti i valori delle coordinate e della dimensione devono condividere la stessa unità, per esempio pixel, metri o unità cartografiche proiettate. Se occorre una griglia realmente piana e coerente nelle distanze, proietti prima longitudine e latitudine geografiche.

Interpreti il risultato assiale e l’arrotondamento

La colonna e la riga restituite sono coordinate assiali, spesso indicate come q e r nella documentazione sulle griglie esagonali. Le coordinate assiali usano due assi interi, sebbene sulla griglia sia possibile muoversi in sei direzioni. La terza coordinata cubica, non mostrata, è l’opposto della somma delle prime due; questa proprietà rende semplici le operazioni su distanza, celle adiacenti, anelli e intervalli. Internamente, il punto viene trasformato in coordinate assiali frazionarie in base all’orientamento scelto. Le frazioni sono convertite in coordinate cubiche, arrotondate preservando il vincolo cubico e riconvertite in una coppia assiale intera. Il procedimento è importante perché arrotondare separatamente i due assi visibili può scegliere la cella sbagliata vicino a un confine diagonale. Un punto situato esattamente su un bordo o vertice condiviso appartiene geometricamente a più poligoni chiusi, quindi ogni assegnazione necessita di una regola di spareggio. Il calcolatore risolve questi casi in modo deterministico mediante l’arrotondamento numerico di JavaScript e un ordine fisso di correzione dei componenti. Per i punti interni il risultato è l’unica cella contenitrice; sui confini esatti rappresenta una scelta canonica e ripetibile.

Usi gli indici di cella nei sistemi spaziali

Dopo aver ottenuto colonna e riga assiali, un’applicazione può raggruppare numerose osservazioni senza memorizzare o verificare il poligono di ciascun esagono. Un gioco può convertire la posizione del puntatore in una casella del tabellone, una visualizzazione può aggregare eventi proiettati in contenitori e un generatore procedurale può usare la coppia come chiave stabile di una tessera. Conservi la definizione originale della griglia insieme agli indici: la stessa colonna e riga identifica una regione fisica diversa se cambiano dimensione, orientamento oppure origine. Per elaborare più punti, applichi impostazioni identiche a ogni elemento e raggruppi i record con una chiave composta, per esempio, da colonna, virgola e riga. Gli indici negativi sono normali e indicano semplicemente celle a sinistra, sopra o sotto l’origine assiale, a seconda dell’orientamento. L’operazione richiede tempo costante per punto e non dipende dall’estensione complessiva della griglia. Non impone nemmeno un confine artificiale, quindi funziona sia per tabelloni finiti sia per griglie concettualmente infinite. Per la visualizzazione, ricavi il centro o i vertici della cella con le corrispondenti formule da assiali a piane, anziché trattare colonna e riga come coordinate rettangolari in pixel.

Selezionare una cella con il puntatore

Converta una posizione del mouse, della penna o del tocco nella cella assiale usata da un tabellone, un editor o un gioco strategico.

Raggruppare osservazioni cartografiche

Assegni punti di una mappa proiettata a contenitori esagonali stabili prima di contarli, colorarli o riepilogarli.

Indicizzare mondi procedurali

Trasformi una posizione in indici interi di colonna e riga per indirizzare terreno generato, cache o stati di simulazione.

Che cosa indica size?

Size è la distanza dal centro di un esagono a uno dei suoi vertici. In un esagono regolare coincide anche con la lunghezza del lato.

Qual è la differenza tra gli orientamenti pointy e flat?

Gli esagoni pointy hanno vertici in alto e in basso. Gli esagoni flat hanno lati orizzontali in tali posizioni. La conversione cambia di conseguenza.

La colonna o la riga possono essere negative?

Sì. Le coordinate assiali si estendono in ogni direzione dalla cella zero, zero, quindi gli indici negativi sono previsti.

Che cosa accade se il punto è esattamente sul confine?

L’arrotondamento cubico applica una regola deterministica di spareggio e restituisce una delle celle che condividono il bordo o il vertice.

Posso inserire direttamente longitudine e latitudine?

Il calcolo accetta numeri, ma presuppone un sistema piano. Proietti prima le coordinate geografiche quando servono distanze e aree coerenti.

Quanto costa una richiesta API?

Ogni richiesta API costa $0.002. Lo stesso calcolo deterministico può essere eseguito anche nel browser.

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/geo/hex-grid-cell

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/geo/hex-grid-cell \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"x":18,"y":9,"size":10}'
{
  "x": 18,
  "y": 9,
  "size": 10
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.hex_grid_cell",
  "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.

Leggi la documentazione completa del KIT →