![]() |
OpenCPN, selon
Shoreline |
Plan
du
site ---> Cartes et
documents
---> Les cartes au format MBtiles. |
CD_06 | Les cartes au format MBTiles |
Validité : Version bêta 4.99 (et/ou, de préférence, plus récente) |
|
Up |
Le
format MBTiles, Version 1.0 à 1.3 : |
|
Up |
MBTiles 1.0AbstractMBTiles is a specification for storing tiled map data in SQLite databases for immediate usage and for transfer. MBTiles files, known as tilesets, must implement the specification below to ensure compatibility with devices. Database SpecificationsTilesets are expected to be valid SQLite databases of version 3.0.0 or higher. Only core SQLite features are permitted; tilesets cannot require extensions. DatabaseNote: the schemas outlined are meant to be followed as interfaces. SQLite views that produce compatible results are equally valid. For convenience, this specification refers to tables and virtual tables (views) as tables. MetadataSchemaThe database is required to contain a table or view named This table must yield exactly two columns named
ContentThe metadata table is used as a key/value store for settings. Four keys are required:
TilesSchemaThe database is required to contain a table named The table must yield four columns named
ContentThe tiles table contains tiles and the values used to locate
them. The
The Formats supported:
|
Up |
MBTiles 1.1Sub-sections:
AbstractMBTiles is a specification for storing tiled map data in SQLite databases for immediate usage and for transfer. MBTiles files, known as tilesets, must implement the specification below to ensure compatibility with devices. Database SpecificationsTilesets are expected to be valid SQLite databases of version 3.0.0 or higher. Only core SQLite features are permitted; tilesets cannot require extensions. DatabaseNote: the schemas outlined are meant to be followed as interfaces. SQLite views that produce compatible results are equally valid. For convenience, this specification refers to tables and virtual tables (views) as tables. MetadataSchemaThe database is required to contain a table or view named This table must yield exactly two columns named
ContentThe metadata table is used as a key/value store for settings. Five keys are required:
One row in
Several additional keys are supported for tilesets that
implement
UTFGrid-based interaction. See TilesSchemaThe database is required to contain a table named The table must yield four columns named
ContentThe tiles table contains tiles and the values used to locate
them.
The
The A subset of image file formats are permitted:
|
Up Up |
MBTiles 1.2Sub-sections:
AbstractMBTiles is a specification for storing tiled map data in SQLite databases for immediate usage and for transfer. MBTiles files, known as tilesets, must implement the specification below to ensure compatibility with devices. Database SpecificationsTilesets are expected to be valid SQLite databases of version 3.0.0 or higher. Only core SQLite features are permitted; tilesets cannot require extensions. MBTiles databases can optionally use the officially assigned magic number to be easily identified as MBTiles. DatabaseNote: the schemas outlined are meant to be followed as interfaces. SQLite views that produce compatible results are equally valid. For convenience, this specification refers to tables and virtual tables (views) as tables. MetadataSchemaThe database is required to contain a table or view named This table must yield exactly two columns named
ContentThe metadata table is used as a key/value store for settings. Five keys are required:
One row in
Several additional keys are supported for tilesets that implement UTFGrid-based interaction. TilesSchemaThe database is required to contain a table named The table must yield four columns named
ContentThe tiles table contains tiles and the values used to locate
them.
The The global-mercator (aka Spherical Mercator) profile is assumed The A subset of image file formats are permitted:
GridsSee the UTFGrid specification for implementation details of grids and interaction metadata itself: the MBTiles specification is only concerned with storage. SchemaThe database can have optional tables named The
The
ContentThe The |
Up Up Up |
MBTiles 1.3Résumé : MBTiles est une spécification pour le stockage des données cartographiques en mosaïque dans les bases de données SQLite pour une utilisation immédiate et pour le transfert. Les fichiers MBTiles, connus sous le nom de tilesets, DOIVENT implémenter la spécification ci-dessous pour assurer la compatibilité avec les périphériques. Compatibilité Cette section est informative et n'ajoute pas d'exigences aux implémentations. Étant donné que les vues peuvent être utilisées pour produire le schéma MBTiles, deux implémentations peuvent stocker des mosaïques avec des détails internes différents, ce qui signifie qu'une mise en œuvre peut ne pas être en mesure d'ajouter à un fichier existant. En tant que format de conteneur, MBTiles peut stocker toutes les données en mosaïque, de sorte que les données peuvent être stockées avec une implémentation qui ne peut rien faire. S'appuyer sur des clés de métadonnées non définies dans la spécification peut entraîner des problèmes de compatibilité. Spécifications de la base de données Les Tilesets DOIVENT être des bases de données SQLite valides de la version 3.0.0 ou supérieure. Seules les fonctionnalités SQLite principales sont autorisées. Les tilesets NE DOIVENT PAS nécessiter d'extensions. Les bases de données MBTiles PEUVENT utiliser le numéro magique attribué officiellement pour être facilement identifiées comme MBTiles. Base de données Note: les schémas décrits sont destinés à être utilisés comme interfaces. Les vues SQLite qui produisent des résultats compatibles PEUVENT être utilisées à la place. Par souci de commodité, cette spécification fait référence aux tables et tables virtuelles (vues) en tant que tables. Jeu de caractères Tout le texte dans les colonnes de texte des tables d'un tileset mbtiles DOIT être encodé en UTF-8. Métadonnées Schéma La base de données DOIT contenir une table ou une vue nommée métadonnées. Cette table ou cette vue DOIT produire exactement deux colonnes de type texte, nom et valeur. Une instruction de création typique pour la table de métadonnées: CREATE TABLE metadata (nom de texte, texte de valeur); Contenu La table de métadonnées est utilisée comme magasin de clé / valeur pour les paramètres. Il DOIT contenir ces deux lignes: name (string): Le nom lisible par l'utilisateur du tileset. format (chaîne de caractères): format de fichier des données de pavé: pbf, jpg, png, webp ou un type de support IETF pour d'autres formats. pbf en tant que format fait référence aux données de pavé vectoriel compressées par gzip au format Vectoriel Mapbox. La table de métadonnées DEVRAIT contenir ces quatre lignes: bounds (chaîne de nombres séparés par des virgules): L'extension maximale de la zone de carte rendue. Les limites doivent définir une zone couverte par tous les niveaux de zoom. Les limites sont représentées par les valeurs de latitude et de longitude WGS 84, au format OpenLayers Bounds (gauche, bas, droite, haut). Par exemple, les limites de la Terre entière, moins les pôles, seraient: -180,0, -85,180,85. center (chaîne de nombres séparés par des virgules): La longitude, la latitude et le niveau de zoom de la vue par défaut de la carte. Exemple: -122.1906,37.7599,11 minzoom (number): Le niveau de zoom le plus bas pour lequel le tileset fournit des données maxzoom (number): Le niveau de zoom le plus élevé pour lequel le tileset fournit des données La table de métadonnées PEUT contenir ces quatre lignes: attribution (chaîne HTML): Chaîne d'attribution qui explique les sources de données et / ou le style de la carte. description (string): Une description du contenu du tileset. type (chaîne): superposition ou couche de base version (nombre): La version du jeu de caractères. Cela fait référence à une révision du tileset lui-même, pas à la spécification MBTiles. Si le format est pbf, la table de métadonnées DOIT contenir cette ligne: json (objet JSON stringifié): Répertorie les couches qui apparaissent dans les mosaïques vectorielles et les noms et types des attributs des entités qui apparaissent dans ces couches. Voir ci-dessous pour plus de détails. La table de métadonnées PEUT contenir des lignes supplémentaires pour les tilesets qui implémentent l'interaction UTFGrid ou à d'autres fins. Tiles (Tuiles) Schéma La base de données DOIT contenir une table nommée tiles. La table DOIT contenir trois colonnes de type integer, nommées zoom_level, tile_column, tile_row, et une de type blob, nommée tile_data. Une instruction create typique pour la table tiles: CREATE TABLE tiles (entier_zone_variable, entier_tchule_colonne, entier_tableau_olde, données_dossier blob); La base de données PEUT contenir un index pour un accès efficace à cette table: CREATE UNIQUE INDEX tile_index sur les tuiles (zoom_level, tile_column, tile_row); Contenu La table des tuiles contient des tuiles et les valeurs utilisées pour les localiser. Les colonnes zoom_level, tile_column et tile_row DOIVENT coder l'emplacement de la mosaïque, en suivant la spécification de service de carte de mosaïque, avec la restriction que le profil global-mercator (aka Spherical Mercator) DOIT être utilisé. Notez que dans le schéma de tuilage TMS, l'axe Y est inversé du système de coordonnées "XYZ" communément utilisé dans les URL pour demander des tuiles individuelles, donc la tuile communément appelée 11/327/791 est insérée comme zoom_level 11, tile_column 327 , et tile_row 1256, puisque 1256 est 2 ^ 11 - 1 - 791. La colonne tile_data DOIT contenir l'image binaire brute ou les données de pavé vectoriel pour la mosaïque associée en tant que blob. Grilles Voir la spécification UTFGrid pour les détails d'implémentation des grilles et des métadonnées d'interaction elle-même: la spécification MBTiles ne concerne que le stockage. Schéma La base de données PEUT avoir des tables nommées grids et grid_data. La table grids DOIT contenir trois colonnes de type integer, nommées zoom_level, tile_column et tile_row, et une de type blob, nommée grid. Une instruction create typique pour la table grids: Grilles CREATE TABLE (entier_zone_variable, entier_colonne_plateau, entier_tablé_bloc, bloc blob); La table grid_data DOIT contenir trois colonnes de type integer, nommées zoom_level, tile_column et tile_row, et deux de type text, nommées key_name et key_json. Une instruction create typique pour la table grid_data: CREATE TABLE grille_données (entier_zone_voliveur, entier_colonne_table, entier_tablé_table, texte_clé_clé, texte_jeu_clé); Contenu La table grids, si présente, DOIT contenir des données UTFGrid, compressées au format gzip. La table grid_data, si présente, DOIT contenir une clé de grille pour les mappages de valeurs, avec des valeurs codées en tant qu'objets JSON. Métadonnées vectorielles Comme mentionné ci-dessus, les mosaïques de carreaux vectoriels Mapbox DOIVENT inclure une ligne json dans la table de métadonnées pour résumer les couches disponibles dans les mosaïques et les attributs disponibles pour les entités de ces couches. La ligne json, si présente, DOIT contenir la représentation sous forme de chaîne UTF-8 d'un objet JSON. Vector_layers L'objet JSON dans la ligne json DOIT contenir une clé vector_layers, dont la valeur est un tableau d'objets JSON. Chacun de ces objets JSON décrit une couche de données de pavé vectoriel et DOIT contenir les paires clé-valeur suivantes: id (chaîne de caractères): ID de couche, appelé le nom de la couche dans la spécification de mosaïque Vector Mapbox. fields (object): objet JSON dont les clés et les valeurs sont les noms et les types d'attributs disponibles dans cette couche. Chaque type DOIT être la chaîne "Number", "Boolean" ou "String". Les attributs dont le type varie entre les fonctionnalités DEVRAIENT être listés comme "String". Chaque objet de couche PEUT également contenir la paire clé-valeur suivante: description (string): Une description lisible par l'homme du contenu de la couche. Chaque objet de couche PEUT également contenir la paire clé-valeur suivante: minzoom (nombre): Le niveau de zoom le plus bas dont les couches apparaissent dans cette couche. maxzoom (nombre): Le niveau de zoom le plus élevé dont les couches apparaissent dans cette couche. Le minzoom DOIT être supérieur ou égal au minzoom du tileset, et le maxzoom DOIT être inférieur ou égal au maxzoom du tileset. Ces touches sont utilisées pour décrire la situation où différents ensembles de couches vectorielles apparaissent dans différents niveaux de zoom du même ensemble de mosaïques, par exemple dans le cas où une couche "routes secondaires" n'est présente qu'à des niveaux de zoom élevés. Tilestats L'objet JSON dans la ligne json PEUT aussi contenir une clé tilestats, dont la valeur est un objet au format "geostats" documenté dans le référentiel mapbox-geostats. Comme les vector_layers, il répertorie les couches du tileset et les attributs trouvés dans chaque couche, mais fournit également des valeurs d'échantillon pour chaque attribut et la plage de valeurs pour les attributs numériques. Exemple Un carreau vectoriel contenant des comtés des États-Unis et des routes principales de TIGER peut avoir la table de métadonnées suivante: Nom: TIGER 2016 format: pbf limites: -179.231086, -14.601813,179.859681,71.441059 centre: -84.375000,36.466030,5 minzoom: 0 maxzoom: 5 attribution: Recensement des États-Unis description: Comtés de recensement des États-Unis et routes principales type: superposition version 2 Json: { "vector_layers": [ { "id": "tl_2016_us_county", "description": "Census counties", "minzoom": 0, "maxzoom": 5, "fields": { "ALAND": "Number", "AWATER": "Number", "GEOID": "String", "MTFCC": "String", "NAME": "String" } }, { "id": "tl_2016_us_primaryroads", "description": "Census primary roads", "minzoom": 0, "maxzoom": 5, "fields": { "FULLNAME": "String", "LINEARID": "String", "MTFCC": "String", "RTTYP": "String" } } ], "tilestats": { "layerCount": 2, "layers": [ { "layer": "tl_2016_us_county", "count": 3233, "geometry": "Polygon", "attributeCount": 5, "attributes": [ { "attribute": "ALAND", "count": 6, "type": "number", "values": [ 1000508839, 1001065264, 1001787870, 1002071716, 1002509543, 1003451714 ], "min": 82093, "max": 376825063576 }, { "attribute": "AWATER", "count": 6, "type": "number", "values": [ 0, 100091246, 10017651, 100334057, 10040117, 1004128585 ], "min": 0, "max": 25190628850 }, { "attribute": "GEOID", "count": 6, "type": "string", "values": [ "01001", "01003", "01005", "01007", "01009", "01011" ] }, { "attribute": "MTFCC", "count": 1, "type": "string", "values": [ "G4020" ] }, { "attribute": "NAME", "count": 6, "type": "string", "values": [ "Abbeville", "Acadia", "Accomack", "Ada", "Adair", "Adams" ] } ] }, { "layer": "tl_2016_us_primaryroads", "count": 12509, "geometry": "LineString", "attributeCount": 4, "attributes": [ { "attribute": "FULLNAME", "count": 6, "type": "string", "values": [ "1- 80", "10", "10-Hov Fwy", "12th St", "14 Th St", "17th St NE" ] }, { "attribute": "LINEARID", "count": 6, "type": "string", "values": [ "1101000363000", "1101000363004", "1101019172643", "1101019172644", "1101019172674", "1101019172675" ] }, { "attribute": "MTFCC", "count": 1, "type": "string", "values": [ "S1100" ] }, { "attribute": "RTTYP", "count": 6, "type": "string", "values": [ "C", "I", "M", "O", "S", "U" ] } ] } ] } } Evolutions futures : Dans une future révision de cette spécification, la table de métadonnées contiendra une ligne de compression pour indiquer le type de compression (le cas échéant) qui a été appliqué aux données de la mosaïque. Lors d'une future révision de cette spécification, les lignes bounds, minzoom et maxzoom de la table de métadonnées seront obligatoires. Une révision future de cette spécification déléguera la description de la ligne json de la table de métadonnées à une spécification externe. |
Up Up Up Up Up Up Up Up Up Up Up |
Retour haut de
page |
Copyright
: Ce site web est protégé contre toute utilisation
commerciale. Dernière modification de cette page : |