[whatwg] [canvas] matrix based changes on bitmaps
Ian Hickson
ian at hixie.ch
Thu Sep 20 15:45:29 PDT 2012
On Mon, 23 Apr 2012, Tyler Larson wrote:
>
> Looping over every pixel in JavaScript is slow. Many cool things could
> be taken care of much faster if the canvas had some form of matrix
> manipulations built in.
>
> All of the pixels could have one transformation operation defined and
> all of the pixels could be operated on at once in something lower level.
>
> It could look like this...
>
> context.transformMatrix([0.5,0.5,0.5,0,0,
> 0.5,0.5,0.5,0,0,
> 0.5,0.5,0.5,0,0,
> 0,0,0,1,0,
> 0,0,0,0,1]);
>
> It's far simpler than looping over an array of pixels and picking out
> the values of each color.
>
> Other graphics systems have ways of doing this already. You can easily
> find sample tutorials on how to create and transform matrixes.
>
> In some languages they have matrix objects that have methods for even
> easier manipulation of these transformations but I'm cool without this
> if it is easier.
It seems like a reasonable suggestion, but since the pixel data is
available as an ArrayBuffer, it seems like the more reasonable thing to do
is to provide generic ArrayBuffer manipulation routines.
I recommend raising this as feedback on the ArrayBuffer spec.
--
Ian Hickson U+1047E )\._.,--....,'``. fL
http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,.
Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
More information about the whatwg
mailing list