Revision bdb341bc
Added by Leszek Koltunski over 7 years ago
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
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.