Revision bdb341bc
Added by Leszek Koltunski over 7 years ago
src/main/java/org/distorted/library/type/Dynamic3D.java | ||
---|---|---|
426 | 426 |
} |
427 | 427 |
|
428 | 428 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
429 |
/** |
|
430 |
* Writes the results of interpolation between the Points at time 'time' to the passed float buffer. |
|
431 |
* <p> |
|
432 |
* Since this is a 3-dimensional Dynamic, the resulting interpolated Static3D gets written |
|
433 |
* to three locations in the buffer: buffer[offset], buffer[offset+1] and buffer[offset+2]. |
|
434 |
* |
|
435 |
* @param buffer Float buffer we will write the resulting Static3D to. |
|
436 |
* @param offset Offset in the buffer where to write the result. |
|
437 |
* @param time Time of interpolation. Time=0.0 would return the first Point, Time=0.5 - the last, |
|
438 |
* time=1.0 - the first again, and time 0.1 would be 1/5 of the way between the first and the last Points. |
|
439 |
*/ |
|
429 |
|
|
440 | 430 |
synchronized void interpolate(float[] buffer, int offset, float time) |
441 | 431 |
{ |
442 | 432 |
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.