Adjustment to Static's API.
RubikCube: make finishingRotation more flexible (can now finish any rotation which did finish interpolating (nearly) to the end - and not only the single-static 'manual' rotation)
Dynamics App: fix moving Quat PointsLibrary: remove negating the Quat Points in the DynamicQuat in order to always go the shortest route.
library: Fix DynamicQuatcube app: progress with ScrambleEffects
Modify the 'convexity' param in Dynamics.
This finally satisfies the requirements of the 'Spin' effect in MagicCube: achieving constant speed ( by setting a 1D Dynamic's convexity to 0)
Add the 'convexity' param to Dynamics and the Dynamic app.
Improvements to comments and function names in Dynamics
Improve the Dynamic app.
Minor improvements in the Dynamics.
1. Change the API of Dynamic: split makeNowRunFor into two separate 'setDuration' and 'resetToBeginning'2. Major changes to the 'Dynamic' app so that we can check more about the Dynamics.
Invert the order of Matrix Effects. Now, just as in the other queues, the first matrix effect is actually the first to act on the object - not the other way around!
Correct the Legal notice.
Rename all the classes that are not exported to application to 'Internal'
Many things.
1) make the Dynamic.setDuration() able to be called AFTER the Dynamic has already been run. (and rename it to 'makeRunNowFor()' )2) remove the automatic removal of zero Effects from EffectQueues.3) adjust several Apps to cope with 2)4) add post-rotation to Rubik (still not finished)
Finish the Rubik app.
Simplify Statics.
Beginnings of support for the unified Data data type.
Some progress with Effect classes.
Big mess - nothing compiles now; classes moved around.
Beginnings of support for Effect classes.
Important bugfix in Dynamic - sometimes it would never stop interpolating and never send a FINISHED message!
Fix Lint warnings, correct a lot of comments, adjust EffectListener interface.
Progress with WindManager.
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.
2 bugfixes:
- in Dynamics, it has to be t<=0.5 (rather than t<0.5) (see comment in code)- in EffectQueueVertex, we need to postprocess() the last time, when effect is finished but not removed!
Minor details
Bugfix
Bugfix (sometimes, when t=0.5 exactly, it wouldn't recompute Noise in case of PATH mode)
re-generate noise after passing each Point.
Flag app finished
Next fixes for issues with 'jumping' path when noise is on. (and a whole lot of commented out debugging)
1. Attempt to deal with unstable Orthonormal Base in Dynamic class (so far unsuccessful)2. Improvements to the 'Dynamic' (and by necessity, 'MovingEffects') applications (to be able to debug the previous)
minor stuff
Fix 4D and 5D noise, make noise N dimensional.
Bugfix for the fishy loops in 2D noise.
Some corrections for the new Noise, it is still fishy though (some suspicious loops form - see it with the ''Dynamics" example app, 2D, 3 points)
Completely redesign Noise in the Dynamics and move all the complexity to the parent class.
something does not work with it now :)
Move most of the NOISE complications from DynamicND classes to the parent Dynamic class.
Make the WAVE effect 5D (extra parameter 'offset')
Add Static5D and Dynamic5D.
Preparation to make the WAVE effect fully 3D
Minor stuff - comments.
Minor cleanup.
Further reduce the distortedObject's API - now only 26 methods, 1/4 of the 104 before the reorganization.
Major push towards simplifying DistortedObject's public API.All MATRIX effects are using the new API - the 'DataND' marker interfaces.
move data types, like FlatND and InterpolatorND, to a separate package.