ForHosting KIT · Outils pour développeurs

Point vers cellule hexagonale

Convertissez une coordonnée plane en la cellule qui la contient sur une grille hexagonale régulière.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Indiquez le point, la taille de l’hexagone et, si nécessaire, l’orientation et l’origine de la grille. Le résultat fournit des indices entiers de colonne et de ligne axiales, directement exploitables pour les cartes, les jeux, le regroupement spatial, les agencements procéduraux et les calculs de voisinage. La conversion repose sur un arrondi en coordonnées cubiques : les points proches des arêtes et des sommets sont donc affectés de manière cohérente, sans parcours des cellules ni construction de polygones.

Définissez la grille avant de localiser le point

Une grille hexagonale régulière exige trois informations avant qu’un point puisse être affecté à une cellule. Saisissez d’abord les coordonnées planes x et y dans le même repère que la grille. Définissez ensuite size comme la distance entre le centre d’un hexagone et l’un de ses sommets. Il s’agit du rayon du cercle circonscrit, et non de la largeur totale, de la hauteur, de l’écartement entre côtés ou de la distance entre centres. Choisissez enfin l’orientation. Une grille pointy présente un sommet en haut et en bas, tandis qu’une grille flat possède des côtés horizontaux à ces emplacements. La valeur par défaut est pointy. Initialement, la cellule axiale zéro, zéro est centrée sur la coordonnée plane zéro, zéro. Utilisez origin_x et origin_y si la grille est décalée. L’origine ne modifie que sa position, jamais son échelle, son orientation ou son indexation. Les coordonnées et la taille doivent toutes employer la même unité, par exemple des pixels, des mètres ou les unités d’une carte projetée. Pour obtenir une grille véritablement plane et cohérente en distance, projetez au préalable la longitude et la latitude géographiques.

Interprétez le résultat axial et son arrondi

La colonne et la ligne renvoyées sont des coordonnées axiales, souvent notées q et r dans les ouvrages consacrés aux grilles hexagonales. Ce repère utilise deux axes entiers, bien qu’un déplacement sur la grille offre six directions. La troisième coordonnée cubique, omise, correspond à l’opposé de la somme des deux premières, ce qui simplifie les calculs de distance, de voisins, d’anneaux et de portée. En interne, le point est transformé en coordonnées axiales fractionnaires selon l’orientation choisie. Ces fractions deviennent des coordonnées cubiques, sont arrondies tout en respectant la contrainte cubique, puis redeviennent une paire axiale entière. Cette méthode est essentielle : arrondir séparément les deux axes visibles peut désigner la mauvaise cellule près d’une frontière diagonale. Un point placé exactement sur une arête ou un sommet commun appartient géométriquement à plusieurs polygones fermés; toute affectation nécessite donc une règle de départage. Le calculateur tranche de façon déterministe grâce à l’arrondi numérique de JavaScript et à un ordre fixe de correction des composantes. Pour un point intérieur, le résultat est l’unique cellule qui le contient; sur une frontière exacte, il constitue un choix canonique et reproductible.

Exploitez les indices dans un système spatial

Dès qu’un point possède une colonne et une ligne axiales, une application peut regrouper de nombreuses observations sans stocker ni tester le polygone de chaque hexagone. Un jeu peut convertir la position du pointeur en case de plateau, une visualisation peut agréger des événements projetés dans des compartiments, et un générateur procédural peut employer la paire comme clé de tuile stable. Conservez la définition d’origine de la grille avec les indices : une colonne et une ligne identiques désignent une autre zone physique si la taille, l’orientation ou l’origine change. Pour traiter plusieurs points, appliquez des réglages identiques à chaque élément et regroupez les enregistrements avec une clé telle que la colonne, une virgule, puis la ligne. Les indices négatifs sont normaux; ils repèrent simplement des cellules situées à gauche, au-dessus ou en dessous de l’origine axiale selon l’orientation. L’opération s’exécute en temps constant pour chaque point, indépendamment de l’étendue totale de la grille. Elle n’impose aucune limite artificielle et convient aussi bien aux plateaux finis qu’aux grilles conceptuellement infinies. Pour l’affichage, calculez le centre ou les sommets de la cellule avec les formules axiales vers planes correspondantes, sans assimiler colonne et ligne à des coordonnées rectangulaires en pixels.

Sélectionner une case avec un pointeur

Convertissez une position de souris, de stylet ou de contact en cellule axiale utilisée par un plateau, un éditeur ou un jeu de stratégie.

Regrouper des observations cartographiques

Affectez des points d’une carte projetée à des compartiments hexagonaux stables avant de les compter, de les colorer ou de les résumer.

Indexer un monde procédural

Transformez une position en indices entiers de colonne et de ligne pour adresser un terrain généré, un cache ou un état de simulation.

Que représente size ?

Size est la distance du centre d’un hexagone à l’un de ses sommets. Pour un hexagone régulier, elle est aussi égale à la longueur du côté.

Quelle différence existe-t-il entre pointy et flat ?

Les hexagones pointy ont des sommets en haut et en bas. Les hexagones flat y ont des côtés horizontaux. La conversion des coordonnées diffère selon ce choix.

La colonne ou la ligne peut-elle être négative ?

Oui. Les coordonnées axiales s’étendent dans toutes les directions depuis la cellule zéro, zéro; des indices négatifs sont donc normaux.

Que se passe-t-il si le point est exactement sur une frontière ?

L’arrondi cubique applique une règle de départage déterministe et renvoie l’une des cellules qui partagent cette arête ou ce sommet.

Puis-je saisir directement une longitude et une latitude ?

Le calcul accepte des nombres, mais suppose un repère plan. Projetez d’abord les coordonnées géographiques si la cohérence des distances et des surfaces est importante.

Quel est le prix d’une requête API ?

Chaque requête API coûte $0.002. Le même calcul déterministe peut également s’exécuter dans le navigateur.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/geo/hex-grid-cell

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

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 est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →