Proiezione Hammer: latitudine e longitudine in x, y
Il calcolatore della proiezione Hammer converte latitudine e longitudine geografiche in coordinate piane x e y per una mappa mondiale equivalente.
Esegui gratis nel browser
Applica la classica modifica ellittica della proiezione azimutale equivalente di Lambert e consente di configurare meridiano centrale, raggio di scala e precisione. Lei può verificare calcoli cartografici, preparare coordinate normalizzate per una visualizzazione o mostrare come una proiezione globale scambi la fedeltà delle forme con la conservazione delle aree. Ogni risultato è deterministico, viene calcolato senza rete e include la differenza di longitudine normalizzata, così la trasformazione resta verificabile.
Come Hammer trasforma una coordinata
La proiezione Hammer dispone il mondo sferico in un’ellisse conservando le aree relative. Il calcolatore converte dapprima la latitudine e la differenza di longitudine da gradi a radianti. Dimezza poi tale differenza e valuta il denominatore comune mediante il coseno della latitudine e quello della semilongitudine. La coordinata orizzontale usa il coseno della latitudine e il seno della semilongitudine; quella verticale usa il seno della latitudine. Fattori fissi basati sulla radice di due creano il tipico contorno. È una proiezione sferica diretta: riceve una posizione geografica e restituisce un punto sul piano. Non conserva angoli, distanze o forme locali. L’output riporta proiezione, dati originali, meridiano, differenza normalizzata e raggio. I calcoli mantengono tutta la precisione numerica e vengono arrotondati una sola volta alla fine, evitando di accumulare errori intermedi.
Scelta di meridiano, scala e precisione
La latitudine deve trovarsi fra -90 e 90 gradi, poli compresi. Longitudine e meridiano centrale possono essere qualsiasi numero finito, perché la loro differenza viene ricondotta all’intervallo della mappa mondiale. Longitudini separate da giri completi producono quindi lo stesso punto. Il meridiano centrale decide quale longitudine passa nel mezzo: mantenga zero per Greenwich oppure scelga un valore vicino alla regione da allontanare dal taglio. Il raggio è un fattore di scala positivo, non un datum terrestre. Con raggio uno le coordinate sono normalizzate; moltiplicandolo, x e y crescono nella stessa proporzione. I decimali devono essere un intero da zero a dodici e sono sei per impostazione predefinita. Più cifre non rendono il modello sferico geograficamente più accurato. Campi mancanti, stringhe numeriche, valori infiniti e intervalli errati producono un errore di input esplicito.
Uso corretto dell’output equivalente
Hammer è adatta alle mappe mondiali tematiche in cui conta confrontare visivamente l’estensione delle regioni. Coropleti, superfici di densità globale, atlanti didattici e diagrammi distributivi sfruttano la conservazione dell’area e il limite ellittico compatto. Lei può inviare x e y a un sistema grafico dopo aver definito la trasformazione della vista: di solito si sposta l’origine al centro, si usa una scala uniforme e si inverte y se lo schermo cresce verso il basso. Mantenga lo stesso meridiano per tutti i dati. Se linee o poligoni attraversano il taglio, i vertici sono corretti ma può essere necessario dividere la geometria per evitare un segmento attraverso la mappa. Non consideri queste coordinate come metri e non le unisca a tile Web Mercator. Hammer conserva le aree globali, non rotte, distanze, angoli locali o un sistema ellissoidale ufficiale.
Casi d'uso
Preparare punti per mappe tematiche
Converta osservazioni geografiche in coordinate equivalenti normalizzate prima di scalarle in SVG, canvas o grafici.
Verificare un’implementazione cartografica
Confronti coordinate note con risultati Hammer deterministici durante test di codice, meridiani centrali o rendering.
Mostrare la distorsione delle proiezioni
Generi punti didattici per confrontare la conservazione delle aree di Hammer con forme e latitudini di altre proiezioni.
Domande frequenti
Quanto costa una richiesta API?
Il prezzo base è $0.002 per coordinata proiettata. Il calcolatore web può anche eseguire localmente questa funzione deterministica.
Hammer conserva distanze o angoli?
No. Conserva l’area sulla sfera, ma può deformare distanze, direzioni, angoli e forme, soprattutto vicino al bordo.
Quali unità usano x e y?
Usano le stesse unità arbitrarie del raggio. Scelga raggio uno per normalizzare, quindi applichi la Sua scala visiva.
Perché la longitudine viene normalizzata?
Una mappa mondiale copre un giro completo. La normalizzazione riunisce longitudini equivalenti e colloca il taglio di fronte al meridiano scelto.
Posso cambiare la regione centrale?
Sì. Imposti central_meridian_deg sulla longitudine che deve attraversare il centro della mappa Hammer.
Viene usato un datum terrestre ellissoidale?
No. È la formula sferica standard di Hammer con raggio configurabile, non una trasformazione di datum o un sistema ellissoidale.
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/hammer-project \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lat_deg":40.7128,"lon_deg":-74.006}'const res = await fetch("https://api.kit.forhosting.com/geo/hammer-project", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lat_deg": 40.7128,
"lon_deg": -74.006
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/hammer-project",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lat_deg": 40.7128,
"lon_deg": -74.006
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/hammer-project", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lat_deg":40.7128,"lon_deg":-74.006}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lat_deg":40.7128,"lon_deg":-74.006}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/hammer-project", 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
{
"lat_deg": 40.7128,
"lon_deg": -74.006
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.hammer_project",
"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. |