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/Dynamic4D.java
438 438
    }
439 439

  
440 440
///////////////////////////////////////////////////////////////////////////////////////////////////
441
/**
442
 * Writes the results of interpolation between the Points at time 'time' to the passed float buffer.
443
 * <p>
444
 * Since this is a 4-dimensional Dynamic, the resulting interpolated Static4D gets written
445
 * to four locations in the buffer: buffer[offset], buffer[offset+1], buffer[offset+2] and buffer[offset+3]. 
446
 * 
447
 * @param buffer Float buffer we will write the resulting Static4D to.
448
 * @param offset Offset in the buffer where to write the result.
449
 * @param time Time of interpolation. Time=0.0 would return the first Point, Time=0.5 - the last,
450
 *             time=1.0 - the first again, and time 0.1 would be 1/5 of the way between the first and the last Points.
451
 */    
441

  
452 442
  synchronized void interpolate(float[] buffer, int offset, float time)
453 443
    {  
454 444
    switch(numPoints)

Also available in: Unified diff