A package for geo utils
Overview
The @julschwarz/ts-geo-utils
TypeScript package is a utility library that provides a set of functions for working with Points, LineStrings, Polygons and BBoxes. These functions are designed to simplify common operations around geojson objects, making it easier to work with spatial information.
Installation
You can install the @julschwarz/ts-geo-utils
package via npm or yarn:
npm install @julschwarz/ts-geo-utils
# OR
yarn add @julschwarz/ts-geo-utils
Getting Started
To use this package in your TypeScript project, import the functions you need and start working with bounding boxes.
import { bboxToPoly, expandBBox } from "@julschwarz/ts-geo-utils";
// Example usage
const bbox = [10, 20, 30, 40];
const polygon = bboxToPoly(bbox);
const expandedBBox = expandBBox(bbox, 1000);
Functions
-
expandBBox
expands a bounding box by a specified distance in meters. This is useful for increasing the size of a bounding box while preserving its center. -
isInsideBBox
checks whether a given Point is located inside a specified bounding box. It returns a boolean value indicating whether the point is within the box. -
polyToBBox
takes a GeoJSON polygon as input and calculates the bounding box that encloses the polygon's geometry. -
bboxToPoly
takes a bounding box as input and converts it into a GeoJSON polygon. -
positionToBBox
generates a bounding box based on a center position and a specified distance in meters. It returns the BBox that encompasses the area around the center point. -
getBBoxEdgeLength
calculates the edge length in meters of a squared bounding box. The result is rounded to the nearest meter. -
terminal
calculates the destination Position on a sphere given a starting Position, a bearing in degrees, and a distance in meters.