Security News
PyPI Introduces Digital Attestations to Strengthen Python Package Security
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
@turf/bbox
Advanced tools
@turf/bbox is a module from the Turf.js library that calculates the bounding box (bbox) for a given GeoJSON object. A bounding box is an array that defines the minimum and maximum coordinates in the form [minX, minY, maxX, maxY]. This is useful for spatial analysis, mapping, and geographic data processing.
Calculate Bounding Box
This feature calculates the bounding box for a single point. The output is an array representing the bounding box.
const turf = require('@turf/turf');
const point = turf.point([102.0, 0.5]);
const bbox = turf.bbox(point);
console.log(bbox); // Output: [102, 0.5, 102, 0.5]
Bounding Box for a Polygon
This feature calculates the bounding box for a polygon. The output is an array representing the bounding box.
const turf = require('@turf/turf');
const polygon = turf.polygon([[
[100.0, 0.0],
[101.0, 0.0],
[101.0, 1.0],
[100.0, 1.0],
[100.0, 0.0]
]]);
const bbox = turf.bbox(polygon);
console.log(bbox); // Output: [100, 0, 101, 1]
Bounding Box for a Feature Collection
This feature calculates the bounding box for a feature collection containing multiple points. The output is an array representing the bounding box.
const turf = require('@turf/turf');
const point1 = turf.point([102.0, 0.5]);
const point2 = turf.point([103.0, 1.0]);
const featureCollection = turf.featureCollection([point1, point2]);
const bbox = turf.bbox(featureCollection);
console.log(bbox); // Output: [102, 0.5, 103, 1]
The geojson-bbox package provides similar functionality to @turf/bbox by calculating the bounding box for GeoJSON objects. It is a lightweight alternative but does not offer the extensive suite of geospatial tools available in the Turf.js library.
The bbox package is another alternative that focuses on calculating bounding boxes for various types of GeoJSON objects. It is simpler and more focused compared to @turf/bbox, which is part of a larger geospatial analysis library.
Takes a set of features, calculates the bbox of all input features, and returns a bounding box.
Parameters
geojson
(FeatureCollection | Feature<any>) input featuresExamples
var line = turf.lineString([[-74, 40], [-78, 42], [-82, 35]]);
var bbox = turf.bbox(line);
var bboxPolygon = turf.bboxPolygon(bbox);
//addToMap
var addToMap = [line, bboxPolygon]
Returns Array<number> bbox extent in [minX, minY, maxX, maxY] order
This module is part of the Turfjs project, an open source module collection dedicated to geographic algorithms. It is maintained in the Turfjs/turf repository, where you can create PRs and issues.
Install this module individually:
$ npm install @turf/bbox
Or install the Turf module that includes it as a function:
$ npm install @turf/turf
5.0.0 🎉
Object
.@turf/voronoi
][voronoi]Takes a FeatureCollection of points, and a bounding box, and returns a FeatureCollection of Voronoi polygons. (PR https://github.com/Turfjs/turf/pull/1043 - Author @stevage)
@turf/shortest-path
][shortest-path]Returns the shortest path from start to end without colliding with any feature in obstacles (PR https://github.com/Turfjs/turf/pull/956 - Author @stebogit)
@turf/boolean-parallel
][boolean-parallel]Boolean-Parallel returns True if each segment of line1
is parallel to the correspondent segment of line2
(PR https://github.com/Turfjs/turf/pull/941 - Author @stebogit)
@turf/nearest-point-on-line
][nearest-point-on-line]Takes a {@link Point} and a {@link LineString} and calculates the closest Point on the (Multi)LineString. (PR https://github.com/Turfjs/turf/pull/939 - Author @stebogit)
Updates [@turf/unkink-polygon
][unkink-polygon] testing & added flattenEach
instead of using flatten
.
(PR https://github.com/Turfjs/turf/pull/889)
Add multi-geomtry support to @turf/line-split
(PR https://github.com/Turfjs/turf/pull/1078)
Improve @turf/meta
lineEach
method to provide properties, id and bbox
(PR https://github.com/Turfjs/turf/pull/1010)
Fixes @turf/helpers
earth radius variable
(PR https://github.com/Turfjs/turf/pull/1012)
Fixes @turf/polygon-tangents
bug
(PR https://github.com/Turfjs/turf/pull/1058)
Fixes @turf/line-chunk
bug when the number of segments is integer
(PR https://github.com/Turfjs/turf/pull/1046)
Fixes segmentEach
and segmentReduce
methods in @turf/meta
to ensure something is returned
(PR https://github.com/Turfjs/turf/pull/968)
Object
:Before
var from = [-75.343, 39.984];
var to = [-75.534, 39.123];
var units = 'miles';
var distance = turf.distance(from, to, units);
After
var from = [-75.343, 39.984];
var to = [-75.534, 39.123];
var options = {units: 'miles'};
var distance = turf.distance(from, to, options);
@turf/random
PR https://github.com/Turfjs/turf/issues/994@turf/idw
Issue https://github.com/Turfjs/turf/issues/887@turf/point-grid/hex/square/triangle
PR https://github.com/Turfjs/turf/pull/1029@turf/inside
=> @turf/boolean-point-in-polygon
https://github.com/Turfjs/turf/issues/860#issuecomment-317216235@turf/within
=> @turf/points-within-polygon
https://github.com/Turfjs/turf/issues/860#issuecomment-317216235@turf/bezier
=> @turf/bezier-spline
Issue https://github.com/Turfjs/turf/issues/661@turf/nearest
=> @turf/nearest-point
https://github.com/Turfjs/turf/pull/858#issuecomment-317197295@turf/point-on-line
=> @turf/nearest-point-on-line
https://github.com/Turfjs/turf/pull/858#issuecomment-317197295@turf/lineDistance
=> @turf/length
https://github.com/Turfjs/turf/issues/860#issuecomment-317229869@turf/helpers
radians2degrees
=> radiansToDegrees
degrees2radians
=> degreesToRadians
distanceToDegrees
=> lengthToDegrees
distanceToRadians
=> lengthToRadians
radiansToDistance
=> radiansToLength
bearingToAngle
=> bearingToAzimuth
convertDistance
=> convertLength
FAQs
turf bbox module
The npm package @turf/bbox receives a total of 0 weekly downloads. As such, @turf/bbox popularity was classified as not popular.
We found that @turf/bbox demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 9 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.