0.2.0 • Published 12 years ago
continuous-observer v0.2.0
continuous-observer
Take a continuous ndarray and, given a set of "observable" positions, automatically add and remove chunks as required.
Use this for painless chunk management with one or more visible perspectives.
Installation
npm install continuous-observerUsage
observe = require('continuous-observer')(field[, range[, linger]])
Returns a function that can be used to update the chunks in use, given a
continuous ndarray (field). Optionally:
rangeis the amount of surrounding chunks to include. Defaults to 1.lingeris the amount of surrounding chunks to not remove when cleaning up. Defaults torange, and cannot be set to belowrange.
observe(points)
points is an array of arrays, with each array representing an observer's
position. Can also handle a single array as well, if you're only using one
observer.
// Create a continuous ndarray with 32x32 chunks
var field = require('ndarray-continuous')({ shape: [32, 32] })
// Create the observer
var moveTo = require('continuous-observer')(field, 1, 2)
// "Move" the observer to the origin
moveTo([0, 0])
// Ahead one chunk
moveTo([32, 32])
// Ahead another chunk - this will remove
// some of the older chunks.
moveTo([32, 32])
// Including another observer just involves
// adding another position to the array.
moveTo([[32, 32], [0, 0]])