biocore / emperor

Emperor a tool for the analysis and visualization of large microbial ecology datasets
http://biocore.github.io/emperor/
Other
52 stars 50 forks source link

Fast Animation #724

Closed dhakim87 closed 5 years ago

dhakim87 commented 5 years ago

I split the Tube rendering into static and dynamic portions. Static tubes are computed once upon starting playback. Dynamic tubes are recalculated each frame. Static tube draw range is recalculated each frame as well. The effect is that we draw all the animation up to a certain point, then fit a single interpolated segment onto the end of it. This is much faster than recomputing all the tubes every frame.

Smooth on 20000 points on my laptop. Should check it on more hardware since it touches the webGL layer.

ElDeveloper commented 5 years ago

BTW, @antgonza if you can have a look that would be very helpful!

rob-knight commented 5 years ago

This sounds awesome!

On Jul 26, 2019, at 6:48 PM, Yoshiki Vázquez Baeza notifications@github.com<mailto:notifications@github.com> wrote:

BTW, @antgonzahttps://github.com/antgonza if you can have a look that would be very helpful!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/biocore/emperor/pull/724?email_source=notifications&email_token=AAPL2KNC6EHGEVKWJ2XNO4TQBOSPJA5CNFSM4IG55YH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD26BFUQ#issuecomment-515642066, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAPL2KM6IBTR4UMINGU5QATQBOSPJANCNFSM4IG55YHQ.

ElDeveloper commented 5 years ago

@ElDeveloper; do you think it will be worth adding a "clear" example of how this new implementation improves animations?

Yes, although the only real dataset where this is showcased is a private one. I'll message you some data.

dhakim87 commented 5 years ago

Can someone point me towards the js formatter script that the travis-ci wants me to run?
--- ...Some of the errors reported by GJsLint may be auto-fixable using the script fixjsstyle... ---

ElDeveloper commented 5 years ago

Can someone point me towards the js formatter script that the travis-ci wants me to run?

Sure thing, you need to install closure-linter. Note that this only works with py27 so you might need a different environment. Let me know if you run into any issues.

wasade commented 5 years ago

BTW, I haven't been able to recreate the locking up I observed that I had mentioned in email, so from my perspective I'm :+1:

ElDeveloper commented 5 years ago

Thanks so much @dhakim87 this is going to be hella useful!