[whatwg] [Canvas] Behavior on non-invertable CTM

Ian Hickson ian at hixie.ch
Fri Mar 14 13:50:41 PDT 2014

```On Fri, 7 Feb 2014, Justin Novosad wrote:
> > >
> > > Current text: If the point (x0, y0) is equal to the point (x1, y1),
> > > or if the point (x1, y1) is equal to the point (x2, y2), or if both
> > > (x1, y1) to the subpath, and connect that point to the previous
> > > point (x0, y0) by a straight line.
>
> With arcTo, the first point (x0, y0) may have been added to the current
> subpath using a different CTM. So to bring it into the local space of
> the current primitive, we need an invertible CTM.

What I don't understand is why you can't draw the curve in the transformed
space instead of the 1:1 coordinate space. You have to transform it
eventually, right? And the points will end up simply transformed. So you
can easily compare the points in the transformed space. All the transforms
are affine, so what's a straight line isn't impacted. Can't you just draw
the transformed arc instead of first drawing the circular arc and then
transforming it?

Maybe what I'm saying is obviously dumb for some reason, but I'm not
understanding why, if so... (not that I'm a graphics guy, obviously).

--
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

```