Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@turf/square-grid
Advanced tools
@turf/square-grid is a module from the Turf.js library that allows you to create a grid of squares within a bounding box. This can be useful for various geospatial analyses, such as dividing a region into smaller areas for detailed study or visualization.
Create a square grid
This feature allows you to create a grid of squares within a specified bounding box. The `bbox` parameter defines the bounding box, `cellSide` specifies the side length of each square, and `options` can include units of measurement.
const turf = require('@turf/turf');
const bbox = [-95, 30, -85, 40];
const cellSide = 50;
const options = { units: 'miles' };
const squareGrid = turf.squareGrid(bbox, cellSide, options);
console.log(squareGrid);
Leaflet is a popular open-source JavaScript library for mobile-friendly interactive maps. While it does not specifically create square grids, it offers extensive functionalities for creating and manipulating map layers, including grid layers.
D3-geo is a module of D3.js that provides geographic projections, shapes, and utilities. It can be used to create various types of geographic visualizations, including grids, but requires more manual setup compared to @turf/square-grid.
GeoTIFF is a library for reading and writing GeoTIFF files. While it does not create square grids, it can be used to manipulate geospatial raster data, which can be divided into grids for analysis.
Creates a grid of square polygons with cell length consistent in degrees
bbox
BBox extent of grid in [minX, minY, maxX, maxY] order. If the grid does not fill the bbox perfectly, it is centered.
cellSide
number length of each cell side.
options
Object Optional parameters (optional, default {}
)
options.units
Units the units of the cellSide value.
Supports all valid Turf Units.
If you are looking for squares with sides of equal lengths in linear units (e.g. kilometers) this is not the module for you.
The cellSide is converted from units provided to degrees internally, so the width and height of resulting polygons will be consistent only in degrees. (optional, default 'kilometers'
)options.mask
Feature<(Polygon | MultiPolygon)>? if passed a Polygon or MultiPolygon,
the grid Points will be created only inside itoptions.properties
Object passed to each point of the grid (optional, default {}
)var bbox = [-95, 30 ,-85, 40];
var cellSide = 50;
var options = {units: 'miles'};
var squareGrid = turf.squareGrid(bbox, cellSide, options);
//addToMap
var addToMap = [squareGrid]
Returns FeatureCollection<Polygon> a grid of polygons with equal width and height in degrees.
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 single module individually:
$ npm install @turf/square-grid
Or install the all-encompassing @turf/turf module that includes all modules as functions:
$ npm install @turf/turf
FAQs
turf square-grid module
The npm package @turf/square-grid receives a total of 563,145 weekly downloads. As such, @turf/square-grid popularity was classified as popular.
We found that @turf/square-grid demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 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
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.