A poisson disc sampler implementation.
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
- MultiSampler
- new MultiSampler(config)
- .getPoints() ⇒
Array
- .getNewPoints() ⇒
Array
- .getPointsForCell(x, y) ⇒
Array
- .resize(h, w)
- .prePopulate(points)
- .remove(x, y)
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. |
Array
multiSampler.getPoints() ⇒ Get all points from all sub-samplers.
Kind: instance method of MultiSampler
Returns: Array
- The array of points.
Array
multiSampler.getNewPoints() ⇒ Get new sample points from sampler.
Kind: instance method of MultiSampler
Returns: Array
- An array of points.
Array
multiSampler.getPointsForCell(x, y) ⇒ 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. |
Array
randomSampler.getPoints() ⇒ Get all sample points from sampler.
Kind: instance method of RandomSampler
Returns: Array
- An array of points.
Array
randomSampler.getNewPoints(The) ⇒ 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. |
Array
poissonDiscSampler.getPoints() ⇒ Get all sample points from sampler.
Kind: instance method of PoissonDiscSampler
Returns: Array
- An array of points.
Array
poissonDiscSampler.getNewPoints(The) ⇒ 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. |