Preparing S-57 data using enc_processor Python module

From Maria GDK Wiki
Preparing S-57 data using enc processor Python module /
Revision as of 14:58, 13 March 2024 by Mbu (talk | contribs)
Jump to navigation Jump to search

S-57 source data can be converted to MBTiles using the Python module enc_processor. The output is split into one MBTiles dataset for each scaleband. Some layers are given custom fields to facilitate rendering in MARIA GDK. Zoom level configuration in the output is defined to work with the existing product NorwayNauticalENCVector.

scalebands = {
    1 : {'name':'Overview', 'minzoom':3, 'maxzoom':12},
    2 : {'name':'General', 'minzoom':10, 'maxzoom':13},
    3 : {'name':'Coastal', 'minzoom':10, 'maxzoom':13},
    4 : {'name':'Approach', 'minzoom':13, 'maxzoom':16},
    5 : {'name':'Harbor', 'minzoom':14, 'maxzoom':17},
    6 : {'name':'Berthing', 'minzoom':14, 'maxzoom':17},
}

Processing all scalebands for Norway typically takes 7-9 hours using a fast computer and SSD.

Dependencies

The module depends on the following non-standard Python packages.

  • GDAL
  • protobuf
S-57 enc processor.png

Arguments

Argument Description
input Input folder containing S-57 "000" files. Folders are searched recursively.
output Output folder where MBTiles will be built
--debug Write debug log messages

Example of use

python -m enc_processor c:\work\enc\enc_root\ c:\work\enc\mbtiles\ --debug

python -m enc_processor --help