Project

General

Profile

« Previous | Next » 

Revision bdb341bc

Added by Leszek Koltunski over 7 years ago

Dynamics: Introduce 2 Modes of operation:

- 'random access' mode, where we are able to call a single Dynamic from multiple thread simultaneously.
- 'sequential' mode, which only permits sequential interpolation from one client.

The second mode has an advantage when one needs to change mDuration: it keeps on interpolating smoothly. In the first mode, this is not possible.

View differences:

src/main/java/org/distorted/library/type/Dynamic2D.java
396 396
    }
397 397

  
398 398
///////////////////////////////////////////////////////////////////////////////////////////////////
399
/**
400
 * Writes the results of interpolation between the Points at time 'time' to the passed float buffer.
401
 * <p>
402
 * Since this is a 2-dimensional Dynamic, the resulting interpolated Static2D gets written
403
 * to two locations in the buffer: buffer[offset] and buffer[offset+1]. 
404
 * 
405
 * @param buffer Float buffer we will write the resulting Static2D to.
406
 * @param offset Offset in the buffer where to write the result.
407
 * @param time Time of interpolation. Time=0.0 would return the first Point, Time=0.5 - the last,
408
 *             time=1.0 - the first again, and time 0.1 would be 1/5 of the way between the first and the last Points.
409
 */  
399

  
410 400
  synchronized void interpolate(float[] buffer, int offset, float time)
411 401
    {
412 402
    switch(numPoints)

Also available in: Unified diff