1.8.0 • Published 1 year ago

random-points-generator v1.8.0

Weekly downloads
4
License
MIT
Repository
github
Last release
1 year ago

random-points-generator

Version Downloads GitHub license code style: prettier

Generates n random points based on @turf/random.

The value added regarding @turf/random is the filter. Indeed, here points can be generated inside a GeoJSON polygon.

And it comes with :

  • a command line tool,
  • a node library,
  • a browser library

CircleCI (all branches) codecov Maintainability Reviewed by Hound security status FOSSA Status

Prerequisites

  • node

Usage

node

$ npm i random-points-generator

or

yarn add random-points-generator

browser

<script src="https://unpkg.com/random-points-generator"></script>

<script>
  const fc = geotools.random(5);
</script>

API

function random (number, options)

NameDescriptionTypeDefault
numbernumber of points to generateInteger10
optionsrandom optionsObjectundefined

returns a FeatureCollection

options

OptionsDescription
bboxArray extent in minX, minY, maxX, maxY order which means (southwest lng, lat northeast lng,lat)
featuresGeoJSON polygons as features or a FeatureCollection
unkinktrue\|false Default is true Unkink Polygon (see) before processing the features

Example

const RandomGenerator = require('random-points-generator');
const points = RandomGenerator.random(3);
console.log(JSON.stringify(points));

will output something like :

{"type":"FeatureCollection","features":[{"type":"Feature","geometry":{"type":"Point","coordinates":[126.41316810428155,-47.548372609587574]},"properties":{}},{"type":"Feature","geometry":{"type":"Point","coordinates":[97.69989737806617,-47.200575920302434]},"properties":{}},{"type":"Feature","geometry":{"type":"Point","coordinates":[24.264802630637277,72.69680002654108]},"properties":{}}]}

From the command line

  • clone or fork the repo
  • cd random-points-generator
  • run npm install
  • run ./bin/random-points-generator --help to get options
Usage: bin/random-points-generator [options]

Options:
  --help, -h     Show help                                             [boolean]
  --number, -n                                                     [default: 10]
  --verbose, -v                                                 [default: false]

Examples:
  bin/random-points-generator               Generates 10 random coordinates,
                                            output to console in GeoJSON format
  bin/random-points-generator -n 1000       Generates 1000 random coordinates
  --xmin=-2 --xmax=4 --ymin=-45 --ymax=50   with these bounding box
  bin/random-points-generator -i            Generates 10 random coordinates
  world_countries.geojson                   within polygons from file
                                            world_countries.geojson

Converting to csv

CSV files are not dead. So if needed here is a simple example to generate csv files.

$ npm install random-points-generator
$ npm install geojson2csv

$ ./node_modules/.bin/random-points-generator > points.geojson

$ node
const geojson2csv = require('geojson2csv');

geojson2csv('points.geojson', 'points.csv', (err) => {
  if (err) throw err;
});

:warning: geojson2csv inverts latitude and longitude regarding the column headers check issue.

Revision History

VersionDateDescription
v1.8.026/01/2023Adds optional unkink polygons parameter
v1.7.631/03/2021Upgrade deps packages
v1.7.522/11/2020Upgrade deps packages
v1.7.409/12/2019Upgrade deps packages
v1.7.309/12/2019Upgrade deps packages
v1.7.216/08/2019Upgrade deps packages
v1.7.116/08/2019Build removes node 6
v1.7.014/08/2019Build / test on node 10
v1.6.110/12/2018Missing Built Files
v1.6.010/12/2018Upgrade deps packages
v1.5.201/05/2018fixes unnecessary verbose message
v1.5.025/03/2018add a browser package
v1.4.020/02/2018Use single turf modules
v1.3.007/11/2017Unkink input polygons
v1.2.021/05/2017Rewrite with es6 notation
v1.1.025/04/2017Split command line and lib
v1.0.003/10/2016Creation : a tool command line

Resources

resources folder contains Large Scale Data from Natural Earth

Licensing

Licensed under the MIT License

A copy of the license is available in the repository's LICENSE file.

FOSSA Status

1.8.0

1 year ago

1.7.6

3 years ago

1.7.5

3 years ago

1.7.4

4 years ago

1.7.2

5 years ago

1.7.1

5 years ago

1.7.0

5 years ago

1.6.1

5 years ago

1.6.0

5 years ago

1.5.2

6 years ago

1.5.1

6 years ago

1.5.0

6 years ago

1.4.0

6 years ago

1.3.0

6 years ago

1.1.0

7 years ago

1.0.0

8 years ago