A tracked point. Create via Trackers.point. Mutable. Useful for monitoring how
it changes over time. Eg. when a pointerdown event happens, to record the start position and then
track the pointer as it moves until pointerup.
import { point } from'https://unpkg.com/ixfx/dist/trackers.js';
// Create a tracker on a pointerdown constt = point();
// ...and later, tell it when a point is seen (eg. pointermove) constnfo = t.seen({x:evt.x, y:evt.y}); // nfo gives us some details on the relation between the seen point, the start, and points inbetween // nfo.angle, nfo.centroid, nfo.speed etc.
Compute based on last seen point
t.angleFromStart(); t.distanceFromStart(); t.x / t.y t.length; // Total length of accumulated points t.elapsed; // Total duration since start t.lastResult; // The PointSeenInfo for last seen point
Housekeeping
t.reset(); // Reset tracker
By default, the tracker only keeps track of the initial point and
does not store intermediate 'seen' points. To use the tracker as a buffer,
set storeIntermediate option to true.
// Keep only the last 10 points constt = point({ sampleLimit:10 });
// Store all 'seen' points constt = point({ storeIntermediate:true });
// In this case, the whole tracker is automatically // reset after 10 samples constt = point({ resetAfterSamples:10 })
When using a buffer limited by sampleLimit, the 'initial' point will be the oldest in the
buffer, not actually the very first point seen.
A tracked point. Create via Trackers.point. Mutable. Useful for monitoring how it changes over time. Eg. when a pointerdown event happens, to record the start position and then track the pointer as it moves until pointerup.
See also
Compute based on last seen point
Housekeeping
By default, the tracker only keeps track of the initial point and does not store intermediate 'seen' points. To use the tracker as a buffer, set
storeIntermediate
option to true.When using a buffer limited by
sampleLimit
, the 'initial' point will be the oldest in the buffer, not actually the very first point seen.