Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Shape tween in javascript

Is there a way to do a shape tween in javascript? Using canvas maybe...

like image 686
rizidoro Avatar asked Feb 02 '10 18:02

rizidoro


2 Answers

Shape tween as in Flash is harder to find than motion tween and simple attributes interpolation (like in JSTweener, Tween.lib, JQuery's animate(), d3's transition(), RaphaelJS's animate(), etc.). Those libraries, some cited in the other answers, don't do shape tweening.

You first need to know if you want to draw with SVG or with canvas and what library you will be using. Then, you need an interpolator, a function that will compute the transition between two given shapes, that can write a proper path in SVG or canvas. I wrote an implementation for SVG in D3.js to do some animated transitions between a lot of different shapes (using Gielis's superformula), if someone still need one. You can find an example here

like image 54
Biovisualize Avatar answered Oct 15 '22 15:10

Biovisualize


If you will be doing graphics on the HTML 5 canvas element, you may want to check the Processing.js library. There is a tweening library, but you will probably find it helpful for many other things.

Processing.js uses JavaScript to draw shapes and manipulate images on the HTML 5 Canvas element. The code is light-weight, simple to learn and makes an ideal tool for visualizing data, creating user-interfaces and developing web-based games.

For tweening, you may want to have a look at the following:

  • Tween.lib - Motion Tweening for Processing.js
  • Motion Tweening for Processing.js
like image 26
Daniel Vassallo Avatar answered Oct 15 '22 16:10

Daniel Vassallo