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

2014-03-20 Thread Rik Cabanier
On Mon, Mar 17, 2014 at 2:41 PM, Rik Cabanier caban...@gmail.com wrote: On Mon, Mar 17, 2014 at 2:30 PM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 2:18 PM, Rik Cabanier caban...@gmail.com wrote: On Mon, Mar 17, 2014 at 1:47 PM, Justin Novosad

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

2014-03-17 Thread Justin Novosad
On Fri, Mar 14, 2014 at 4:50 PM, Ian Hickson i...@hixie.ch wrote: 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 radiusX and radiusY are zero, then

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

2014-03-17 Thread Dirk Schulze
On Mar 17, 2014, at 3:49 PM, Justin Novosad ju...@google.com wrote: On Fri, Mar 14, 2014 at 4:50 PM, Ian Hickson i...@hixie.ch wrote: 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

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

2014-03-17 Thread Rik Cabanier
On Mon, Mar 17, 2014 at 8:45 AM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 11:35 AM, Dirk Schulze dschu...@adobe.com wrote: Hmmm, I gave this a bit more thought... To apply the construction algorithm in transformed space, the ellipse parameters (radiusX, radiusY,

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

2014-03-17 Thread Justin Novosad
On Mon, Mar 17, 2014 at 12:59 PM, Rik Cabanier caban...@gmail.com wrote: On Mon, Mar 17, 2014 at 8:45 AM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 11:35 AM, Dirk Schulze dschu...@adobe.com wrote: Hmmm, I gave this a bit more thought... To apply the construction

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

2014-03-17 Thread Rik Cabanier
On Mon, Mar 17, 2014 at 10:18 AM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 12:59 PM, Rik Cabanier caban...@gmail.com wrote: On Mon, Mar 17, 2014 at 8:45 AM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 11:35 AM, Dirk Schulze dschu...@adobe.com

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

2014-03-17 Thread Justin Novosad
On Mon, Mar 17, 2014 at 2:06 PM, Rik Cabanier caban...@gmail.com wrote: Make a clean cut and define that drawing operators are ignored when there's a non-invertible matrix. I could totally go for that, but you are talking about going back on the spec of a feature that has shipped, as

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

2014-03-17 Thread Dirk Schulze
On Mar 17, 2014, at 9:23 PM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 2:06 PM, Rik Cabanier caban...@gmail.com wrote: Make a clean cut and define that drawing operators are ignored when there's a non-invertible matrix. I could totally go for that, but

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

2014-03-17 Thread Rik Cabanier
On Mon, Mar 17, 2014 at 1:23 PM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 2:06 PM, Rik Cabanier caban...@gmail.com wrote: Make a clean cut and define that drawing operators are ignored when there's a non-invertible matrix. I could totally go for that, but you

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

2014-03-17 Thread Rik Cabanier
On Mon, Mar 17, 2014 at 1:47 PM, Justin Novosad ju...@google.com wrote: I have a fix in flight that fixes that problem in Blink by storing the current path in transformed coordinates instead. I've had the fix on the back burner pending the outcome of this thread. That seems like an

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

2014-03-17 Thread Justin Novosad
On Mon, Mar 17, 2014 at 2:18 PM, Rik Cabanier caban...@gmail.com wrote: On Mon, Mar 17, 2014 at 1:47 PM, Justin Novosad ju...@google.com wrote: I have a fix in flight that fixes that problem in Blink by storing the current path in transformed coordinates instead. I've had the fix on

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

2014-03-17 Thread Rik Cabanier
On Mon, Mar 17, 2014 at 2:30 PM, Justin Novosad ju...@google.com wrote: On Mon, Mar 17, 2014 at 2:18 PM, Rik Cabanier caban...@gmail.com wrote: On Mon, Mar 17, 2014 at 1:47 PM, Justin Novosad ju...@google.com wrote: I have a fix in flight that fixes that problem in Blink by storing

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

2014-03-14 Thread Ian Hickson
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 radiusX and radiusY are zero, then the method must add the point (x1, y1) to the subpath, and connect

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

2014-02-07 Thread Justin Novosad
On Thu, Feb 6, 2014 at 2:55 PM, Ian Hickson i...@hixie.ch wrote: On Thu, 6 Feb 2014, Justin Novosad wrote: I am looking into correcting Chrome's behavior to make it spec-compliant in this case. There is one specific primitive that is proving problematic: arcTo The problem is that

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

2014-02-06 Thread Justin Novosad
On Tue, Jul 23, 2013 at 2:11 PM, Ian Hickson i...@hixie.ch wrote: The second does setTransform(0,0,0,0,0,0), which should reset the CTM to a zero matrix (again, not invertible). IE, Opera and FF draw a line to 0,0 and close the path afterwards (which kind of makes sense, since the

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

2014-02-06 Thread Ian Hickson
On Thu, 6 Feb 2014, Justin Novosad wrote: I am looking into correcting Chrome's behavior to make it spec-compliant in this case. There is one specific primitive that is proving problematic: arcTo The problem is that the algorithm needs to bring the last point in the subpath into the arc's

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

2014-02-06 Thread Rik Cabanier
On Thu, Feb 6, 2014 at 2:14 PM, Justin Novosad ju...@google.com wrote: On Tue, Jul 23, 2013 at 2:11 PM, Ian Hickson i...@hixie.ch wrote: The second does setTransform(0,0,0,0,0,0), which should reset the CTM to a zero matrix (again, not invertible). IE, Opera and FF draw a line to

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

2013-07-23 Thread Ian Hickson
On Mon, 22 Jul 2013, Dirk Schulze wrote: scale(0) is invalid, and should throw an exception. I don't think that we want to throw an exception on scale(0). No browser does that today. WebKit did it in some places in the past but removed the exceptions. WebIDL says it should throw a

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

2013-07-18 Thread Ian Hickson
On Tue, 29 Jan 2013, Dirk Schulze wrote: The spec doesn't have any wording about the behavior on non-invertible CTMs on Canvas contexts. Is it still possible to add segments to the current path once a CTM is not invertible anymore? Does the path get rejected completely then?

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

2013-01-29 Thread Dirk Schulze
Hi, The spec doesn't have any wording about the behavior on non-invertible CTMs on Canvas contexts. Is it still possible to add segments to the current path once a CTM is not invertible anymore? Does the path get rejected completely then? Implementations are fairly different. Here are two