UNPKG

geotiff-tile-web-worker

Version:
121 lines (92 loc) 3 kB
# geotiff-tile-web-worker Create a GeoTIFF Tile using an Inline Web Worker ## install ### via script tag ```html <script src="https://unpkg.com/geotiff-tile-web-worker"></script> ``` ### via terminal ``` npm install geotiff-tile-web-worker ``` ## basic usage ```js import { createWorker } from "geotiff-tile-web-worker"; const worker = createWorker(); const result = await worker.createTile({ // url to a geotiff url: "https://storage.googleapis.com/pdd-stac/disasters/hurricane-harvey/0831/20170831_172754_101c_3b_Visual.tif", // bounding box of tile in format [xmin, ymin, xmax, ymax] bbox: [-95.976562, 29.535232, -95.888671, 29.611673] }); // result is { height: 256, width: 256, tile: [ Uint8Array[...], // first band Uint8Array[...], // second band Uint8Array[...], // third band ] } ``` ## advanced usage ```js import { createWorker } from "geotiff-tile-web-worker"; const worker = createWorker(); worker.createTile({ // url to a GeoTIFF file url: "https://storage.googleapis.com/pdd-stac/disasters/hurricane-harvey/0831/20170831_172754_101c_3b_Visual.tif", // bounding box of tile in format [xmin, ymin, xmax, ymax] bbox: [-96.01226806640625, 29.616445727622548, -96.01089477539062, 29.61763959537609], /*** ALL PARAMETERS BELOW ARE OPTIONAL */ // spatial reference system of the bounding box as an EPSG Code number // default is 4326 bbox_srs: 4326, // geometry to clip by in GeoJSON format cutline: geojson, // spatial reference system of cutline // default is 4326 cutline_srs: 4326, // set to higher number to increase logging // default is 0 debug_level: 0, // over-ride no data value set in geotiff metadata geotiff_no_data: 0, // resampling method // default is "near" method: "max", // round pixel values to integers // default is false round: true, // override default nested tile array types tile_array_types: ["Array", "Uint8ClampedArray"], // if tile_array_types is not specified, choose the strategy for deciding which type of arrays: // auto - safest and default option, only uses typed array if it's sure there won't be any clamping // geotiff - use the same array types that geotiff.js uses (good if not stretching min or max) // untyped - use only untyped arrays // undefined - same as auto tile_array_types_strategy: "untyped", // layout using xdim layout syntax: https://github.com/danieljdufour/xdim tile_layout: "[band][row,column]", // projection of the tile as an EPSG code // default is 3857 tile_srs: 3857, // tile height in pixel // default is 256 tile_height: 512, // over-ride default "no data" value in output tile tile_no_data: 0, // width of tile in pixels // default is 256 tile_width: 512, // whether to use overviews if available // default is true use_overview: false, // enable experimental turbocharging via proj-turbo // default is false turbo: false }) // stop web worker worker.terminate(); ```