# Auditeur MVT Mapbox Vector Tile PMTiles projection Google MVT et encodage tilelive

Audite les tuiles vectorielles .mvt/.pbf et les archives PMTiles v3 selon la Mapbox Vector Tile Specification 2.x : décode les tables protobuf Layer/Feature/Value, valide le flux de commandes MoveTo/LineTo/ClosePath, le sens des anneaux et les index de tags, vérifie les limites XYZ du schéma Google Web Mercator, décode les répertoires PMTiles v3 et signale les budgets taille de tuile vs nombre d’objets.

> Page canonique: https://elysiatools.com/fr/tools/mvt-mapbox-vector-tile-pmtiles-google-mvt-projection-and-tilelive-encoding-auditor

- **Catégorie:** Geography

- **Mots-clés:** mapbox vector tile, auditeur mvt, inspecteur pmtiles, spécification tuiles vectorielles, limites web mercator, hilbert tileid, budget tilelive, décodage protobuf

## Présentation

Audit de format en TypeScript pur : un lecteur protobuf écrit à la main décode Tile.layers → Layer(version/name/features/keys/values/extent) → Feature(tags/type/geometry) → Value (string/float/double/int/uint/sint-zigzag/bool). L’interpréteur de géométrie suit la §4.3 à la lettre — CommandInteger = id | count<<3, ParameterIntegers zigzag, dX/dY ≠ (0,0), ClosePath uniquement pour les polygones avec count 1, POINT = un seul MoveTo, LINESTRING = répétitions MoveTo+LineTo — et classe chaque anneau par la formule de l’arpenteur : les anneaux extérieurs doivent avoir une aire positive (horaire en y-down), les intérieurs négative. Les budgets suivent la pratique tilelive/tippecanoe (seuils ≈500 Ko et ≈10 000 objets). PMTiles v3 est décodé selon la spécification : en-tête de 127 octets, compression interne gzip/brotli, répertoires varint à TileIDs delta sur la courbe de Hilbert, entrées run-length et pointeurs feuilles à run-length 0, contrôles de clustering et de conformité, extraction de tuile par z/x/y. Le panneau Web Mercator valide le XYZ du schéma Google (0 ≤ x,y < 2^z) et calcule le bbox géographique et la résolution.

## Entrées

- **Fichier de tuile** (file): Upload .mvt / .pbf / .pmtiles
- **Zoom de la tuile (z)** (number): e.g. 10 — enables the Web Mercator bbox and PMTiles lookup
- **Colonne de la tuile (x)** (number): e.g. 512
- **Ligne de la tuile (y)** (number): e.g. 384

## Quand l'utiliser

- Pour diagnostiquer des erreurs de rendu ou des géométries corrompues dans des tuiles MVT ou PBF.
- Pour inspecter l'en-tête, les répertoires Hilbert et extraire des tuiles ciblées depuis une archive PMTiles v3.
- Pour surveiller les dépassements de budget de taille (seuil 500 Ko) ou de volume d'objets (seuil 10 000 entités) issus de pipelines Tippecanoe ou Tilelive.

## Fonctionnement

- Téléversez votre fichier de tuile individuelle (.mvt, .pbf, .gz) ou votre archive complète (.pmtiles).
- Renseignez facultativement les coordonnées Zoom (z), Colonne (x) et Ligne (y) pour calculer l'emprise Web Mercator ou cibler une tuile dans le PMTiles.
- Le moteur décode les tables Protobuf, reconstitue la géométrie selon la spécification §4.3 et vérifie le sens des anneaux par la formule de l'arpenteur.
- Consultez le rapport HTML complet détaillant les couches, attributs, statistiques d'encodage et éventuelles non-conformités.

## Cas d'usage

- Validation qualité avant mise en production d'un jeu de tuiles vectorielles généré par Tippecanoe.
- Inspection des métadonnées `vector_layers` et de l'arborescence de répertoires d'un conteneur PMTiles v3 cloud-native.
- Détection d'anomalies de géométrie (commandes dX/dY nulles, ClosePath mal positionnés, inversion d'îlots de polygones).

## Questions fréquentes

### Quels formats de fichiers peuvent être audités ?

L'outil accepte les fichiers .mvt, .pbf, les archives .pmtiles (v3) ainsi que les tuiles compressées en .gz jusqu'à 30 Mo.

### Comment la validité des polygones est-elle contrôlée ?

Elle repose sur la règle de l'arpenteur : en coordonnées y-down, l'anneau extérieur doit avoir une aire positive et les anneaux intérieurs une aire négative.

### Les coordonnées z, x, y sont-elles obligatoires ?

Non pour un fichier MVT brut, mais elles sont nécessaires pour extraire une tuile précise d'une archive PMTiles et pour calculer la bounding box Web Mercator.

### Quels seuils déclenchent des alertes de budget ?

L'auditeur signale les tuiles dont le poids dépasse environ 500 Ko ou dont le nombre d'entités par tuile excède 10 000 objets.

### Le décodage PMTiles v3 gère-t-il la compression interne ?

Oui, les en-têtes, métadonnées et répertoires Hilbert compressés en gzip ou brotli sont intégralement décodés.

## Outils associés

- [Désobfuscateur JavaScript](https://elysiatools.com/fr/tools/javascript-deobfuscator): Désobfusque et analyse le code JavaScript obscurci pour améliorer la lisibilité et la compréhension
- [Tuteur d’échecs : FEN / PGN et rating Elo](https://elysiatools.com/fr/tools/chess-fen-pgn-elo-rating-tutor): Analyse et valide FEN, parties PGN/SAN ; calcule le nouveau rating Elo à partir de victoires/nulles/défaites et ratings adverses ; bandes Lichess/Chess.com
- [Transformateur CSV](https://elysiatools.com/fr/tools/csv-transformer): Transformer et traiter les données CSV avec des opérations de colonnes, calculs et conversions de types de données. Exemples d'opérations: • Renommer une colonne: \[{"type": "rename", "column": "ancien_nom", "new_name": "nouveau_nom"}\] • Ajouter une colonne calculée: \[{"type": "add_column", "new_column": "total", "formula": "prix * quantite"}\] • Supprimer une colonne: \[{"type": "remove_column", "remove_column": "colonne_a_supprimer"}\] • Convertir le type de donnée: \[{"type": "convert_type", "convert_column": "age", "target_type": "number"}\] • Calculer des valeurs: \[{"type": "calculate", "target_column": "total", "expression": "prix * taxe + frais_port"}\] • Filtrer les lignes: \[{"type": "filter_values", "filter_column": "statut", "operator": "equals", "value": "actif"}\]
- [Simulateur de Dynamique Prédateur-Proie de Lotka–Volterra](https://elysiatools.com/fr/tools/lotka-volterra-predator-prey): Résout et visualise le système classique prédateur-proie de Lotka–Volterra : dN/dt = rN − aNP, dP/dt = bNP − mP. Intégration RK4 (6000 pas, avec suivi de la dérive de la quantité conservée V = bN − m·ln N + aP − r·ln P), courbes d'oscillations en opposition de phase des proies et prédateurs et plan de phase aux orbites fermées, avec l'équilibre de coexistence N*=m/b, P*=r/a et la période linéarisée T ≈ 2π/√(rm). Détecte le nombre de cycles, la période mesurée et l'amplitude, et explique l'instabilité structurelle des oscillations neutres : l'amplitude est fixée par les conditions initiales, tandis que les systèmes réels s'amortissent (dépendance de la densité) ou s'auto-excintent (paradoxe de l'enrichissement).
- [Évaluateur d’élagage Parquet par filtres bloom, zone maps, dictionnaires et statistiques de colonnes](https://elysiatools.com/fr/tools/parquet-bloom-filter-zonemap-dictionary-and-column-statistics-pruner-evaluator): Décode le footer thrift Parquet et quantifie l’élagage par predicate pushdown : min/max des zone maps, filtres bloom split-block (XXH64), ratios de dictionnaire et encodages, avec des estimations d’économies par groupe de lignes pour des clauses WHERE d’exemple.
- [PDF Text Extractor](https://elysiatools.com/fr/tools/pdf-text-extractor): Extract text content from PDF documents with support for page selection, formatting options, and multi-language processing
- [Word Text Extractor](https://elysiatools.com/fr/tools/word-text-extractor): Extract text content from Word documents with support for formatting options, paragraph selection, and multi-language processing
- [Minificateur et analyseur SVG](https://elysiatools.com/fr/tools/svg-minifier-analyzer): Analyse le marquage SVG, supprime les elements redondants, reduit la taille, compare avant/apres et exporte des fichiers nettoyes

## Exemples

- [Exemples MVT / PMTiles](https://elysiatools.com/fr/samples/mvt-pmtiles-samples): Fixtures de tuiles vectorielles pour l’auditeur Mapbox Vector Tile et PMTiles
- [Échantillons Convertisseur Hex/Unicode](https://elysiatools.com/fr/samples/text-hex-unicode-formats): Échantillons de test pour la conversion de séquences d'échappement hex et unicode
- [Exemples d'Opérations sur Fichiers Web Go](https://elysiatools.com/fr/samples/web-file-operations-go): Exemples d'opérations sur fichiers Web Go incluant lecture/écriture de fichiers texte, copier/déplacer, parcours de répertoires et validation de fichiers
- [Exemples d'Opérations sur Fichiers Web Python](https://elysiatools.com/fr/samples/web-file-operations-python): Exemples d'opérations sur fichiers Web Python incluant lecture/écriture de fichiers texte, copier/déplacer, parcours de répertoires et validation de fichiers
