{"_id":"@acalcutt/contour-generator","_rev":"6-5b3d3327a8fbaef06294d86c3ab52468","name":"@acalcutt/contour-generator","dist-tags":{"latest":"2.0.5"},"versions":{"2.0.0":{"name":"@acalcutt/contour-generator","version":"2.0.0","keywords":["maplibre","vector","tile","mvt"],"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","_id":"@acalcutt/contour-generator@2.0.0","maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"homepage":"https://github.com/acalcutt/contour_generator#readme","bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"bin":{"contour-generator":"dist/index.js"},"dist":{"shasum":"020b318e52eaeb957a66fdd9433b0f5ed42b3281","tarball":"https://registry.npmjs.org/@acalcutt/contour-generator/-/contour-generator-2.0.0.tgz","fileCount":15,"integrity":"sha512-xTVVnUk+b9uGrR9bCsNUSHOK39fsvMI9GdOZFX7SRhxOTYuNQR6yetQpeaWTssUJVYtGXyc+BVILt46VIRpC4Q==","signatures":[{"sig":"MEYCIQDRwwHxueWTxijYchrhG4daWGtrmMPc6ilumPuEGqAQdwIhALiZFkEESDo6lfOXwk5Z9aYlGCwcuj7QmVH7T1lqKQju","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141985},"main":"dist/index.js","type":"module","gitHead":"ff6f66ca5b97cb9cc8ca5acd0447788e69749974","scripts":{"lint":"eslint \"**/*.{ts,js}\"","test":"echo \"Error: no test specified\" && exit 1","build":"rimraf dist && tsc","check":"npm run format && npm run lint","patch":"patch-package","format":"prettier --write \"**/*.{ts,js,json}\"","prepare":"npm run build","postinstall":"npm run patch"},"_npmUser":{"name":"acalcutt","email":"acalcutt@techidiots.net"},"repository":{"url":"git+https://github.com/acalcutt/contour_generator.git","type":"git"},"_npmVersion":"10.9.2","description":"Locally generates contour vector tiles using maplibre-contour","directories":{},"_nodeVersion":"22.14.0","dependencies":{"tsx":"^4.19.2","sharp":"^0.33.5","pmtiles":"^4.1.0","commander":"^12.1.0","@mapbox/mbtiles":"^0.12.1","@mapbox/tilebelt":"^2.0.2","maplibre-contour":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","rimraf":"^6.0.1","prettier":"^3.4.2","shellcheck":"^3.0.0","typescript":"^5.7.2","@types/node":"^22.10.2","patch-package":"^8.0.0","typescript-eslint":"^8.19.1","eslint-config-prettier":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/contour-generator_2.0.0_1756073915493_0.8392827213079654","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@acalcutt/contour-generator","version":"2.0.1","keywords":["maplibre","vector","tile","mvt"],"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","_id":"@acalcutt/contour-generator@2.0.1","maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"homepage":"https://github.com/acalcutt/contour_generator#readme","bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"bin":{"contour-generator":"dist/index.js"},"dist":{"shasum":"842f17ee95d49f4b11df9e59c1c667e31a240aae","tarball":"https://registry.npmjs.org/@acalcutt/contour-generator/-/contour-generator-2.0.1.tgz","fileCount":15,"integrity":"sha512-oIGWCKv6zPOwe8j0HAtY5ZulrqeHszpneM7rNaFwQu69TE+qdy3lSEJCudq8GKdQUO5zfqynVJThCUWg2r2CAA==","signatures":[{"sig":"MEUCIBNPAvRnsCeZ3h7QdvGfn4IIVE0cy0a70lHi1wXYjGC+AiEA8V9h5AG5cK+oBrwLv+Ug78HU3CmKQVpStFR9ju9AxKk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":142039},"main":"dist/index.js","type":"module","gitHead":"21ed096c58614af8a6e9fd7bbb4a00aa564df427","scripts":{"lint":"eslint \"**/*.{ts,js}\"","test":"echo \"Error: no test specified\" && exit 1","build":"rimraf dist && tsc","check":"npm run format && npm run lint","patch":"patch-package","format":"prettier --write \"**/*.{ts,js,json}\"","prepare":"npm run build","postinstall":"npm run patch"},"_npmUser":{"name":"acalcutt","email":"acalcutt@techidiots.net"},"repository":{"url":"git+https://github.com/acalcutt/contour_generator.git","type":"git"},"_npmVersion":"10.8.2","description":"Locally generates contour vector tiles using maplibre-contour","directories":{},"_nodeVersion":"20.19.4","dependencies":{"tsx":"^4.19.2","sharp":"^0.33.5","semver":"^7.7.2","pmtiles":"^4.1.0","commander":"^12.1.0","patch-package":"8.0.0","@mapbox/mbtiles":"^0.12.1","@mapbox/tilebelt":"^2.0.2","maplibre-contour":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","rimraf":"^6.0.1","prettier":"^3.4.2","shellcheck":"^3.0.0","typescript":"^5.7.2","@types/node":"^22.10.2","patch-package":"^8.0.0","typescript-eslint":"^8.19.1","eslint-config-prettier":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/contour-generator_2.0.1_1756076668032_0.32250902390884684","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@acalcutt/contour-generator","version":"2.0.2","keywords":["maplibre","vector","tile","mvt"],"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","_id":"@acalcutt/contour-generator@2.0.2","maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"homepage":"https://github.com/acalcutt/contour_generator#readme","bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"bin":{"contour-generator":"node ./dist/index.js"},"dist":{"shasum":"9dc589785ae92e6465ea44170453116566eafda1","tarball":"https://registry.npmjs.org/@acalcutt/contour-generator/-/contour-generator-2.0.2.tgz","fileCount":15,"integrity":"sha512-8ThHTWacgNE/wTnaCdhETaKZcNVT3xt/8Q+pqEWFPju1IJqMKPVBdHHzJrxgvsRY43oMJLcgtuSTcsoJRfsqag==","signatures":[{"sig":"MEQCIDlYkXIVz4tM3UuCR1qC6okVxQm9qLiY+UFS9rHJsLXPAiBoQTDoDb19HNEbXl+MnaRTSFn16M8aR/Dx8nX8VKj8ow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":142046},"main":"dist/index.js","type":"module","gitHead":"a89208cc358a917eb744408268df1fe390e15d51","scripts":{"lint":"eslint \"**/*.{ts,js}\"","test":"echo \"Error: no test specified\" && exit 1","build":"rimraf dist && tsc","check":"npm run format && npm run lint","patch":"patch-package","format":"prettier --write \"**/*.{ts,js,json}\"","prepare":"npm run build","postinstall":"npm run patch"},"_npmUser":{"name":"acalcutt","email":"acalcutt@techidiots.net"},"repository":{"url":"git+https://github.com/acalcutt/contour_generator.git","type":"git"},"_npmVersion":"10.8.2","description":"Locally generates contour vector tiles using maplibre-contour","directories":{},"_nodeVersion":"20.19.4","dependencies":{"tsx":"^4.19.2","sharp":"^0.33.5","semver":"^7.7.2","pmtiles":"^4.1.0","commander":"^12.1.0","patch-package":"8.0.0","@mapbox/mbtiles":"^0.12.1","@mapbox/tilebelt":"^2.0.2","maplibre-contour":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","rimraf":"^6.0.1","prettier":"^3.4.2","shellcheck":"^3.0.0","typescript":"^5.7.2","@types/node":"^22.10.2","patch-package":"^8.0.0","typescript-eslint":"^8.19.1","eslint-config-prettier":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/contour-generator_2.0.2_1756077130286_0.40704875547242536","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@acalcutt/contour-generator","version":"2.0.3","keywords":["maplibre","vector","tile","mvt"],"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","_id":"@acalcutt/contour-generator@2.0.3","maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"homepage":"https://github.com/acalcutt/contour_generator#readme","bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"bin":{"contour-generator":"dist/index.js"},"dist":{"shasum":"e430d71d72a57680e368d3341998a9f09217aedb","tarball":"https://registry.npmjs.org/@acalcutt/contour-generator/-/contour-generator-2.0.3.tgz","fileCount":15,"integrity":"sha512-OIgODancHikWalUt4WkPC9lmhfR+o96VmgwxEskxFfytscvv+72mF8zHCw/EF95afrZCtxi6MZpLzV3GJmU3kg==","signatures":[{"sig":"MEYCIQCtrGHYCQnuneDu2jubKSVKUMSbj/rAoP8j4XoRwc2I/wIhAP6MYYwn/llyldwBxn64JZ3HLng2M0fUzdpGlTCsIfcm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":142043},"main":"./dist/index.js","type":"module","gitHead":"3c06a34fb3d99e7a52c1f33d76a917dde058dcdd","scripts":{"lint":"eslint \"**/*.{ts,js}\"","test":"echo \"Error: no test specified\" && exit 1","build":"rimraf dist && tsc","check":"npm run format && npm run lint","patch":"patch-package","format":"prettier --write \"**/*.{ts,js,json}\"","prepare":"npm run build","postinstall":"npm run patch"},"_npmUser":{"name":"acalcutt","email":"acalcutt@techidiots.net"},"repository":{"url":"git+https://github.com/acalcutt/contour_generator.git","type":"git"},"_npmVersion":"10.8.2","description":"Locally generates contour vector tiles using maplibre-contour","directories":{},"_nodeVersion":"20.19.4","dependencies":{"tsx":"^4.19.2","sharp":"^0.33.5","semver":"^7.7.2","pmtiles":"^4.1.0","commander":"^12.1.0","patch-package":"8.0.0","@mapbox/mbtiles":"^0.12.1","@mapbox/tilebelt":"^2.0.2","maplibre-contour":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","rimraf":"^6.0.1","prettier":"^3.4.2","shellcheck":"^3.0.0","typescript":"^5.7.2","@types/node":"^22.10.2","patch-package":"^8.0.0","typescript-eslint":"^8.19.1","eslint-config-prettier":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/contour-generator_2.0.3_1756077703283_0.3861617664083743","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"@acalcutt/contour-generator","version":"2.0.4","keywords":["maplibre","vector","tile","mvt"],"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","_id":"@acalcutt/contour-generator@2.0.4","maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"homepage":"https://github.com/acalcutt/contour_generator#readme","bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"bin":{"contour-generator":"dist/index.js"},"dist":{"shasum":"8b76496cd69f3c8781fa33b38ac410ff326de476","tarball":"https://registry.npmjs.org/@acalcutt/contour-generator/-/contour-generator-2.0.4.tgz","fileCount":15,"integrity":"sha512-4UYTAZZSabkKMCfdeFhygwLqatRKQNdxzzDA0yew2BaXDAtwIWCw3E7x1gKiScWhHZjRmqUn7PP2LPCIPw7bQw==","signatures":[{"sig":"MEYCIQDBN/U8Zw+CmC+CeOQW/YXZr0q87Bt5oQc7ggLu0xpbzQIhALwzSkEhNVkGYhXPVt+VVf9wO2k3qXKfZvYGLj+vN4A2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141992},"main":"./dist/index.js","type":"module","gitHead":"2fcc6143734fd8a0977d53c077deace2ec06e8e0","scripts":{"lint":"eslint \"**/*.{ts,js}\"","test":"echo \"Error: no test specified\" && exit 1","build":"rimraf dist && tsc","check":"npm run format && npm run lint","patch":"patch-package","format":"prettier --write \"**/*.{ts,js,json}\"","prepare":"npm run build","postinstall":"npm run patch"},"_npmUser":{"name":"acalcutt","email":"acalcutt@techidiots.net"},"repository":{"url":"git+https://github.com/acalcutt/contour_generator.git","type":"git"},"_npmVersion":"10.8.2","description":"Locally generates contour vector tiles using maplibre-contour","directories":{},"_nodeVersion":"20.19.4","dependencies":{"tsx":"^4.19.2","sharp":"^0.33.5","semver":"^7.7.2","pmtiles":"^4.1.0","commander":"^12.1.0","patch-package":"8.0.0","@mapbox/mbtiles":"^0.12.1","@mapbox/tilebelt":"^2.0.2","maplibre-contour":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","rimraf":"^6.0.1","prettier":"^3.4.2","shellcheck":"^3.0.0","typescript":"^5.7.2","@types/node":"^22.10.2","patch-package":"^8.0.0","typescript-eslint":"^8.19.1","eslint-config-prettier":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/contour-generator_2.0.4_1756078090519_0.6876207500924434","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"@acalcutt/contour-generator","version":"2.0.5","description":"Locally generates contour vector tiles using maplibre-contour","main":"./dist/index.js","bin":{"contour-generator":"dist/index.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1","patch":"patch-package","build":"rimraf dist && tsc","prepare":"npm run build","postinstall":"npm run patch","format":"prettier --write \"**/*.{ts,js,json}\"","lint":"eslint \"**/*.{ts,js}\"","check":"npm run format && npm run lint"},"repository":{"type":"git","url":"git+https://github.com/acalcutt/contour_generator.git"},"keywords":["maplibre","vector","tile","mvt"],"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","type":"module","bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"homepage":"https://github.com/acalcutt/contour_generator#readme","dependencies":{"@mapbox/mbtiles":"^0.12.1","@mapbox/tilebelt":"^2.0.2","commander":"^12.1.0","maplibre-contour":"^0.1.0","patch-package":"8.0.0","pmtiles":"^4.1.0","semver":"^7.7.2","sharp":"^0.33.5","tsx":"^4.19.2"},"devDependencies":{"@types/node":"^22.10.2","eslint":"^9.17.0","eslint-config-prettier":"^9.1.0","patch-package":"^8.0.0","prettier":"^3.4.2","rimraf":"^6.0.1","shellcheck":"^3.0.0","typescript":"^5.7.2","typescript-eslint":"^8.19.1"},"_id":"@acalcutt/contour-generator@2.0.5","gitHead":"86444e285cf529d7af4a17dd8e5f9967c213896d","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-RD33jCmhBo0HxkLooXFTzwEm65APe2wiUPeAO63idut6/2Oit4T+LGb9bU49kN66Hj1+mMr0poL8MQPnMs/QiA==","shasum":"72987cceb39f24a2929fb3084709d216edc37f43","tarball":"https://registry.npmjs.org/@acalcutt/contour-generator/-/contour-generator-2.0.5.tgz","fileCount":16,"unpackedSize":142472,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCtTswT7Jfd5QYBO8V+vSbHaOSXQPWUI4pTwnGiJq6vrQIgBBv5cFMtKIYWpffNz7SEVZ0RrzN7uoFKLN5Cx3UD5s4="}]},"_npmUser":{"name":"acalcutt","email":"acalcutt@techidiots.net"},"directories":{},"maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/contour-generator_2.0.5_1756079497432_0.1059947913854824"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-24T22:18:35.379Z","modified":"2025-08-24T23:51:37.839Z","2.0.0":"2025-08-24T22:18:35.687Z","2.0.1":"2025-08-24T23:04:28.202Z","2.0.2":"2025-08-24T23:12:10.470Z","2.0.3":"2025-08-24T23:21:43.461Z","2.0.4":"2025-08-24T23:28:10.740Z","2.0.5":"2025-08-24T23:51:37.655Z"},"bugs":{"url":"https://github.com/acalcutt/contour_generator/issues"},"author":{"name":"Andrew Calcutt"},"license":"BSD-3-Clause","homepage":"https://github.com/acalcutt/contour_generator#readme","keywords":["maplibre","vector","tile","mvt"],"repository":{"type":"git","url":"git+https://github.com/acalcutt/contour_generator.git"},"description":"Locally generates contour vector tiles using maplibre-contour","maintainers":[{"name":"acalcutt","email":"acalcutt@techidiots.net"}],"readme":"# Contour Generator\n\nGenerates contour tiles in Mapbox Vector Tile (MVT) format from terrain raster-dem data using [maplibre-contour](https://github.com/onthegomap/maplibre-contour). It allows `maplibre-contour` to work with PMTiles (local or HTTP) when the `demUrl` is prefixed with `pmtiles://` and outputs to local MVT tiles.\n\nThis script outputs tile files in the `<outputDir>/z/x/y.pbf` format and generates a `<outputDir>/metadata.json` file. These files can be imported using [mbutil](https://github.com/mapbox/mbutil). For example, to import the tiles into an mbtiles file using mbutil, the syntax would be: `mb-util --image_format=pbf <outputDir> output.mbtiles`.\n\n# Script Parameters\n\nGenerates contour tiles based on specified function and parameters.\n\nDocker Usage: `docker run --rm -v $(pwd):/data wifidb/contour-generator <function> [options]`  \nLocal Usage: `node . <function> [options]`\nNPM Globally Installed: `contour-generator <function> [options]`\n\n## Functions:\n\n*   `pyramid`: Generates contours for a parent tile and all child tiles up to a specified max zoom level.\n*   `zoom`: Generates a list of parent tiles at a specified zoom level, then runs pyramid on each of them in parallel.\n*   `bbox`: Generates a list of parent tiles that cover a bounding box, then runs pyramid on each of them in parallel.\n\n## General Options\n\n*   `--demUrl <string>`: The URL of the DEM source (e.g., `pmtiles://<http or local file path>` or a tile URL pattern like `https://<zxyPattern>`).\n*   `--encoding <string>`: The encoding of the source DEM tiles (e.g., `'terrarium'`, `'mapbox'`). (default: `mapbox`)\n*   `--sourceMaxZoom <number>`: The maximum zoom level of the source DEM. (default: `8`)\n*   `--increment <number>`: The contour increment value to extract. Use `0` for default thresholds.\n*   `--outputMaxZoom <number>`: The maximum zoom level of the output tile pyramid. (default: `8`)\n*   `--outputDir <string>`: The output directory where tiles will be stored. (default: `./output`)\n*   `--processes <number>`: The number of parallel processes to use. (default: `8`)\n*   `--blankTileNoDataValue <number>`: The elevation value to use for blank tiles when a DEM tile is missing. (default: `0`)\n*   `--blankTileSize <number>`: The pixel dimension of the tiles (e.g., 256 or 512). (default: `512`)\n*   `--blankTileFormat <string>`: The image format for generated blank tiles (`'png'`, `'webp'`, or `'jpeg'`). This is used as a fallback if the source format cannot be determined. (default: `png`)\n*   `-v, --verbose`: Enable verbose output.\n*   `-h, --help`: Show this usage statement.\n\n## Function-Specific Options\n\n### For `pyramid`:\n\n*   `--x <number>`: The X coordinate of the parent tile. (Required)\n*   `--y <number>`: The Y coordinate of the parent tile. (Required)\n*   `--z <number>`: The Z coordinate of the parent tile. (Required)\n\n### For `zoom`:\n\n*   `--outputMinZoom <number>`: The minimum zoom level of the output tile pyramid. (default: `5`)\n\n### For `bbox`:\n\n*   `--minx <number>`: The minimum X coordinate of the bounding box. (Required)\n*   `--miny <number>`: The minimum Y coordinate of the bounding box. (Required)\n*   `--maxx <number>`: The maximum X coordinate of the bounding box. (Required)\n*   `--maxy <number>`: The maximum Y coordinate of the bounding box. (Required)\n*   `--outputMinZoom <number>`: The minimum zoom level of the output tile pyramid. (default: `5`)\n\n# Use with Docker\n\nThis image is published to Docker Hub as [wifidb/contour-generator](https://hub.docker.com/r/wifidb/contour-generator).\n\nThe docker image wifidb/contour-generator can be used for generating tiles in different ways.\n\n## Docker Examples:\n\npyramid function (using Docker w/pmtiles https source):\n```\n# View Help\n docker run -it -v $(pwd):/data wifidb/contour-generator pyramid --help\n\n# Example\n docker run -it -v $(pwd):/data wifidb/contour-generator \\\n    pyramid \\\n    --z 9 \\\n    --x 272 \\\n    --y 179 \\\n    --demUrl \"pmtiles://https://acalcutt.github.io/contour_generator/test_data/terrain-tiles.pmtiles\" \\\n    --sourceMaxZoom 12 \\\n    --encoding mapbox \\\n    --increment 0 \\\n    --outputDir \"/data/output_pyramid\" \\\n    --outputMaxZoom 15 \\\n    -v\n  \n  # Test View Area #9/47.2542/11.5426\n```\n\nzoom function (using Docker w/pmtiles local source):\n```\n# View Help\n docker run -it -v $(pwd):/data wifidb/contour-generator zoom --help\n\n# Downlad example test data into your local directory\n wget https://github.com/acalcutt/contour_generator/releases/download/test_data/JAXA_2024_terrainrgb_z0-Z7_webp.pmtiles\n\n# Example\n docker run -it -v $(pwd):/data wifidb/contour-generator \\\n    zoom \\\n    --demUrl \"pmtiles:///data/JAXA_2024_terrainrgb_z0-Z7_webp.pmtiles\" \\\n    --outputDir \"/data/output_zoom\" \\\n    --sourceMaxZoom 7 \\\n    --encoding mapbox \\\n    --outputMinZoom 5 \\\n    --outputMaxZoom 7 \\\n    --increment 100 \\\n    --processes 8 \\\n    --blankTileNoDataValue 0 \\\n    --blankTileSize 512 \\\n    --blankTileFormat webp \\\n    -v\n  \n  # Test View Area #5/47.25/11.54\n  # Note: some \"No tile returned for\" messages are normal with this JAXA dataset since there are areas without tiles\n```\n\nbbox function (using Docker w/zxyPattern source):\n```\n# View Help\n docker run -it -v $(pwd):/data wifidb/contour-generator bbox --help\n\n# Example\n docker run -it -v $(pwd):/data wifidb/contour-generator \\\n    bbox \\\n    --minx -73.51 \\\n    --miny 41.23 \\\n    --maxx -69.93 \\\n    --maxy 42.88 \\\n    --demUrl \"https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png\" \\\n    --sourceMaxZoom 15 \\\n    --encoding terrarium \\\n    --increment 50 \\\n    --outputMinZoom 5 \\\n    --outputMaxZoom 10 \\\n    --outputDir \"/data/output_bbox\" \\\n    -v\n\n  # Test View Area #5/44.96/-73.35\n```\n\nImportant Notes:\n\nThe -v ```$(pwd):/data``` part of the docker run command maps your local working directory ```$(pwd)``` to ```/data``` inside the Docker container. Therefore, your DEM file must be located in the ```/data``` directory inside of the docker image, and the output directory must also be in the ```/data``` directory.\n\n# Install Locally from git\n```\ngit clone https://github.com/acalcutt/contour-generator.git\ncd contour-generator\nnpm install\n```\n\n# Local Examples:\n\npyramid function (Run Locally w/pmtiles https source):\n```\n# View Help\n node . pyramid --help\n\n# Example\n node . pyramid \\\n  --z 9 \\\n  --x 272 \\\n  --y 179 \\\n  --demUrl \"pmtiles://https://acalcutt.github.io/contour_generator/test_data/terrain-tiles.pmtiles\" \\\n  --sourceMaxZoom 12 \\\n  --encoding mapbox \\\n  --increment 0 \\\n  --outputDir \"./output_pyramid\" \\\n  --outputMaxZoom 15 \\\n  -v\n\n  #Test View Area #9/47.2542/11.5426\n```\n\nzoom function (Run Locally w/pmtiles local source):\n```\n# View Help\n node . zoom --help\n\n# Downlad the test data into your local directory\n wget https://github.com/acalcutt/contour_generator/releases/download/test_data/JAXA_2024_terrainrgb_z0-Z7_webp.pmtiles\n\n#Example\n node .  zoom \\\n  --demUrl \"pmtiles://./JAXA_2024_terrainrgb_z0-Z7_webp.pmtiles\" \\\n  --outputDir \"./output_zoom\" \\\n  --sourceMaxZoom 7 \\\n  --encoding mapbox \\\n  --outputMinZoom 5 \\\n  --outputMaxZoom 7 \\\n  --increment 100 \\\n  --processes 8 \\\n  -v\n\n  # Test View Area #5/47.25/11.54 \n  # Note: some \"No tile returned for\" messages are normal with this JAXA dataset since there are areas without tiles\n```\n\nbbox function (Run Locally w/zxyPattern source):\n```\n# View Help\n node . bbox --help\n\n# Example\n node . bbox \\\n  --minx -73.51 \\\n  --miny 41.23 \\\n  --maxx -69.93 \\\n  --maxy 42.88 \\\n  --demUrl \"https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png\" \\\n  --sourceMaxZoom 15 \\\n  --encoding terrarium \\\n  --increment 50 \\\n  --outputMinZoom 5 \\\n  --outputMaxZoom 10 \\\n  --outputDir \"./output_bbox\" \\\n  -v\n\n  # Test View Area #5/44.96/-73.35\n```\n\n# Test Data License Information\nAWS mapzen terrarium tiles: https://registry.opendata.aws/terrain-tiles/\nJAXA AW3D30: https://earth.jaxa.jp/en/data/policy/","readmeFilename":"README.md"}