1.0.3 • Published 1 year ago

gcslib v1.0.3

Weekly downloads
-
License
see license.html
Repository
github
Last release
1 year ago

html

Thematic Earth

GCSLIB

Parsing and Serializing GCS Strings

Motivation

The creation of this library and CLI was motivated by the desire to create GIS shape files that can be downloaded by website visitors in a highly compressed format.

Summary

The gcslib package is a core JavaScript library used by the Geoplex package, the GCSIO command line tool, and the Thematic Earth web component.

Supported input and output formats comprise:

  • geojson - RFC 7946
  • gfe - Geographic Feature Encoding
  • ice - Indexed Coordinate Encoding
  • tae - Topological Arc Encoding
  • gfebin - Geographic Feature Encoding binary
  • icebin - Indexed Coordinate Encoding binary
  • taebin - Topological Arc Encoding binary

The JavaScript API reads from and writes to standard ECMAScript Strings and ArrayBuffers.

The API does not access the host computer's file system, so it can be used with client facing web pages that obtain data using HTTP.

See also: The GCSIO CLI tool which uses the node.js filesystem package to read and write files using the API's exported functions.

Installation

The gcslib library may be installed directly from github or via NPM.

Browser

To install and use the API

[user@host]# git clone https://github.com/readwritetools/gcslib.git

Sample web frontend to fetch and parse an ICE file into memory:

import API from 'node_modules/gcslib/api/user-api.js'
import GcsHoldingArea from 'node_modules/gcslib/gcs/gcs-holding-area.class.js'
    
var response = await fetch("https://example.com/my-dataset.ice");
var payload = await response.text();

var gcsHoldingArea = new GcsHoldingArea();
var options = {
    inputFormat: "ice",
    datasetId: "myDataset",
    properties: "all"
};

if (API.parseIce(gcsHoldingArea, payload, options) == true) {
    // gcsHoldingArea now contains the parsed features with their geometries and properties.
}

Metadata

Dependencies

This library depends on softlib .

Module exports

Suitability

Availability

License

The gcslib library is not freeware. After evaluating it and before using it in a public-facing website, eBook, mobile app, or desktop application, you must obtain a license from Read Write Tools as part of the thematic-earth DOM Component.