Miss any of our Open RFC calls?Watch the recordings here! »

infinite-poisson-disc-sampler

0.9.0 • Public • Published

Travis Badge

A poisson disc sampler implementation.

Example Codepen

Classes

MultiSampler

A poisson sampler that is a grid of samplers (this allows infinite worlds to use this).

RandomSampler

A fast poison disc sampler. Based on https://www.jasondavies.com/poisson-disc/

PoissonDiscSampler

A fast poison disc sampler. Based on https://www.jasondavies.com/poisson-disc/

MultiSampler

A poisson sampler that is a grid of samplers (this allows infinite worlds to use this).

Kind: global class

new MultiSampler(config)

Create a multisampler.

Param Type Default Description
config Object The config for the sampler.
[config.w] Number 64 The width of the entire sample space.
[config.h] Number 64 The height of the entire sample space.
[config.cw] Number 32 The width of each sub sampler.
[config.ch] Number 32 The height of each subsampler.
[config.r] Number 10 The minimum radius between samples.

multiSampler.getPoints() ⇒ Array

Get all points from all sub-samplers.

Kind: instance method of MultiSampler
Returns: Array - The array of points.

multiSampler.getNewPoints() ⇒ Array

Get new sample points from sampler.

Kind: instance method of MultiSampler
Returns: Array - An array of points.

multiSampler.getPointsForCell(x, y) ⇒ Array

Get points for a single cell.

Kind: instance method of MultiSampler
Returns: Array - The array of points.

Param Type Description
x Number The x coord in the cell.
y Number The y coord in the cell.

multiSampler.resize(h, w)

Resize the multisampler.

Kind: instance method of MultiSampler

Param Type Description
h Number New height.
w Number New width.

multiSampler.prePopulate(points)

Prepopulates all the sub-samplers with the given points, rejecting ones outside the subsamplers.

Kind: instance method of MultiSampler

Param Type Description
points Array The points to seed subsamplers with.

multiSampler.remove(x, y)

Remove a sample from the grid. It will be replaced with new one the next time get points is called.

Kind: instance method of MultiSampler

Param Type Description
x Number The x coord.
y Number The y coord.

RandomSampler

A fast poison disc sampler. Based on https://www.jasondavies.com/poisson-disc/

Kind: global class

new RandomSampler(config)

constructor

Param Type Default Description
config Object The config for the sampler.
[config.w] Number 64 The width of the sample space.
[config.h] Number 64 The height of the sample space.
[config.x] Number 0 The offset from "world" center (used by multisampler).
[config.y] Number 0 The offset from world center.
[config.r] Number 10 The minimum radius between points.

randomSampler.getPoints() ⇒ Array

Get all sample points from sampler.

Kind: instance method of RandomSampler
Returns: Array - An array of points.

randomSampler.getNewPoints(The) ⇒ Array

Get new sample points from sampler.

Kind: instance method of RandomSampler
Returns: Array - An array of points.

Param Type Description
The Number number of new points desired.

randomSampler.run()

Runs the sampler.

Kind: instance method of RandomSampler

randomSampler.remove(x, y)

Remove a sample from the grid. It will be replaced with new one the next time get points is called.

Kind: instance method of RandomSampler

Param Type Description
x Number The x coord.
y Number The y coord.

randomSampler.prePopulate(points)

Pre-populate the sampler with points.

Kind: instance method of RandomSampler

Param Type Description
points Array The points to add to the sampler.

PoissonDiscSampler

A fast poison disc sampler. Based on https://www.jasondavies.com/poisson-disc/

Kind: global class

new PoissonDiscSampler(config)

constructor

Param Type Default Description
config Object The config for the sampler.
[config.w] Number 64 The width of the sample space.
[config.h] Number 64 The height of the sample space.
[config.x] Number 0 The offset from "world" center (used by multisampler).
[config.y] Number 0 The offset from world center.
[config.r] Number 10 The minimum radius between points.

poissonDiscSampler.getPoints() ⇒ Array

Get all sample points from sampler.

Kind: instance method of PoissonDiscSampler
Returns: Array - An array of points.

poissonDiscSampler.getNewPoints(The) ⇒ Array

Get new sample points from sampler.

Kind: instance method of PoissonDiscSampler
Returns: Array - An array of points.

Param Type Description
The Number number of new points desired.

poissonDiscSampler.run()

Runs the sampler.

Kind: instance method of PoissonDiscSampler

poissonDiscSampler.remove(x, y)

Remove a sample from the grid. It will be replaced with new one the next time get points is called.

Kind: instance method of PoissonDiscSampler

Param Type Description
x Number The x coord.
y Number The y coord.

poissonDiscSampler.prePopulate(points)

Pre-populate the sampler with points.

Kind: instance method of PoissonDiscSampler

Param Type Description
points Array The points to add to the sampler.

Keywords

none

Install

npm i [email protected]

Version

0.9.0

License

MIT

Unpacked Size

32.9 kB

Total Files

9

Last publish

Collaborators

  • avatar