OCanvas – an object-based canvas drawing library
ocanvas.org
ocanvas.org
In comparison with Raphael, I find that both libraries are good and useful.
In computer graphics, there are two main approaches for 2D: vector and bitmap. Each one has their situations where it is the most convenient. Raphael is SVG based, vector graphics. oCanvas is html canvas based, bitmap graphics. So each one will have situations where it is the most convenient.
For example, scalable graphics, made of solid lines and shapes, are better suited with the vector approach. While diffuse images and image processing is better suited with the bitmap approach.
oCanvas employs object literals to accede to the various graphic operations. I find that makes the code more readable and thus easier to maintain, than the Raphael API, which makes use of plain function parameters for that.
Some differences that I found: Raphael have support for paths, vector fonts, and premade charts, which oCanvas doesn’t have.
On the other hand, oCanvas have support for animated sprites, scenes and timeline/game loop.
And with real classes, and real methods. O canvas seems like the graphics class alone: http://easeljs.com/docs/Graphics.html
And, the demo site fails utterly on IE7: the documentation website says nothing about browser compatibility.
EDIT: And even then, you only get the 2d context, can't do any WebGL fancystuff with any IE. (Though I don't think oCanvas does any of that anyway?).
SD tries to handle things like child objects dispatching events up the display chain and implementing an AS3-style pseudolanguage...