How to use shpjs - 10 common examples

To help you get started, we’ve selected a few shpjs examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github plotly / react-chart-editor / src / components / widgets / UploadShapefile.js View on Github external
message: ErrorMessages.UPLOAD_SHAPE_FILE.PARSING_ERROR,
        });
      };

      if (fileExtension === "json") {
        try {
          this.props.onUpload(JSON.parse(contents));
        } catch (error) {
          showErrorState(error);
        }
      } else {
        /* shp accepts shapefiles and GeoJSON zipped files:
                 * https://github.com/calvinmetcalf/shapefile-js/blob/gh-pages/lib/index.js#L59
                */

        shp(contents)
          .then(geojson => {
            this.props.onUpload(geojson);
            /*
                     * remain in the "loading" state until the value comes
                     * back to the component in componentWillReceiveProps
                     */
          })
          .catch(showErrorState);
      }
    };
github iTowns / itowns / src / Parser / ShapefileParser.js View on Github external
parse(data, options = {}) {
        let result;

        // If a zip is present, don't read anything else
        if (data.zip) {
            result = shp.parseZip(data.zip);
        } else if (data.shp && data.shx && data.dbf) {
            result = Promise.all([
                shp.parseShp(data.shp, data.prj),
                shp.parseDbf(data.dbf),
            ]).then(shp.combine);
        }

        options.crsIn = data.prj ? proj4(data.prj).oProj.datumName : undefined;

        return Promise.resolve(result).then(res => GeoJsonParser.parse(res, options));
    },
};
github iTowns / itowns / src / Parser / ShapefileParser.js View on Github external
parse(data, options = {}) {
        let result;

        // If a zip is present, don't read anything else
        if (data.zip) {
            result = shp.parseZip(data.zip);
        } else if (data.shp && data.shx && data.dbf) {
            result = Promise.all([
                shp.parseShp(data.shp, data.prj),
                shp.parseDbf(data.dbf),
            ]).then(shp.combine);
        }

        options.crsIn = data.prj ? proj4(data.prj).oProj.datumName : undefined;

        return Promise.resolve(result).then(res => GeoJsonParser.parse(res, options));
    },
};
github iTowns / itowns / src / Parser / ShapefileParser.js View on Github external
parse(data, options = {}) {
        let result;

        // If a zip is present, don't read anything else
        if (data.zip) {
            result = shp.parseZip(data.zip);
        } else if (data.shp && data.shx && data.dbf) {
            result = Promise.all([
                shp.parseShp(data.shp, data.prj),
                shp.parseDbf(data.dbf),
            ]).then(shp.combine);
        }

        options.crsIn = data.prj ? proj4(data.prj).oProj.datumName : undefined;

        return Promise.resolve(result).then(res => GeoJsonParser.parse(res, options));
    },
};
github iTowns / itowns / src / Parser / ShapefileParser.js View on Github external
parse(data, options = {}) {
        let result;

        // If a zip is present, don't read anything else
        if (data.zip) {
            result = shp.parseZip(data.zip);
        } else if (data.shp && data.shx && data.dbf) {
            result = Promise.all([
                shp.parseShp(data.shp, data.prj),
                shp.parseDbf(data.dbf),
            ]).then(shp.combine);
        }

        options.crsIn = data.prj ? proj4(data.prj).oProj.datumName : undefined;

        return Promise.resolve(result).then(res => GeoJsonParser.parse(res, options));
    },
};
github ibi-group / datatools-ui / lib / editor / actions / map / index.js View on Github external
reader.onload = e => {
      const arrayBuff = reader.result
      shp(arrayBuff).then(geojson => {
        console.log(geojson)
        geojson.key = Math.random()
        dispatch(receivedRoutesShapefile(feedSource, geojson))
      })
    }
    reader.readAsArrayBuffer(file)
github terrestris / react-geo / src / Util / FileUtil / FileUtil.jsx View on Github external
reader.addEventListener('loadend', () => {
      const blob = reader.result;
      shp(blob).then(json => {
        FileUtil.addGeojsonLayer(json, map);
      });
    });
  }
github terrestris / ol-util / src / FileUtil / FileUtil.js View on Github external
reader.addEventListener('loadend', () => {
      const blob = reader.result;
      shp(blob).then(json => {
        FileUtil.addGeojsonLayer(json, map);
      });
    });
  }
github OpenDroneMap / WebODM / app / static / app / js / classes / TempLayer.js View on Github external
reader.onload = function () {
        if (reader.readyState != 2 || reader.error) {
          return;
        } else {
          shp(reader.result).then(function (geojson) {
            addLayer(geojson);
          }).catch(function (err) {
            err.message = "Not a proper zipped shapefile " + file.name;
            cb(err);
          })
        }
      }
      reader.readAsArrayBuffer(file);
github conveyal / analysis-ui / lib / components / import-shapefile.js View on Github external
shapefileRead = (e: ProgressEvent & {target: EventTarget}) => {
    debug(`read ${e.target.result.byteLength} bytes`)
    const shapefile = shp.parseZip(e.target.result)
    const properties = []

    for (const key in shapefile.features[0].properties) {
      if (shapefile.features[0].properties.hasOwnProperty(key)) {
        properties.push(key)
      }
    }

    this.setState({
      shapefile,
      properties,
      nameProp: properties[0],
      freqProp: properties[0],
      speedProp: properties[0],
      error: undefined
    })

shpjs

Load shapefiles in pure JavaScript

MIT
Latest version published 4 months ago

Package Health Score

74 / 100
Full package analysis