- From: Tab Atkins Jr. <jackalmage@gmail.com>
- Date: Tue, 7 Sep 2010 15:58:24 -0700
- To: Brad Kemper <brad.kemper@gmail.com>
- Cc: fantasai <fantasai.lists@inkedblade.net>, "www-style@w3.org" <www-style@w3.org>

On Tue, Sep 7, 2010 at 3:46 PM, Brad Kemper <brad.kemper@gmail.com> wrote: > Brad Kemper > On Sep 7, 2010, at 2:20 PM, "Tab Atkins Jr." <jackalmage@gmail.com> wrote: >> On Tue, Sep 7, 2010 at 1:50 PM, fantasai <fantasai.lists@inkedblade.net> wrote: >>> We seem to have multiple notions of how angles should work. >>> >>> There are two commonly-taught methods of mapping angles to directions: >>> - the Bearing Angle Method >>> - the Cartesian Angle Method >>> There are other methods of mapping angles to directions: >>> - the Graphical Angle Method >>> >>> Bearing Angle Method: >>> - Used for compass bearings >>> - Zero degrees points north/up >>> - Angles increase clockwise >>> - Used by the following properties: >>> azimuth (CSS2) >>> glyph-orientation (SVG, XSL) >>> image-orientation (Paged Media) >>> >>> Cartesian Angle Method: >>> - Determined by arctan(slope) in a Cartesian coordinate system with >>> x-values increasing rightwards and y-values increasing upwards >>> - Zero degrees points right >>> - Angles increase counter-clockwise >>> - Used by the following: >>> CSS gradient notation (implied by illustrations in CSS3 Images) >>> >>> Graphical Angle Method >>> - Determined by arctan(slope) in a graphics coordinate system with >>> x-values increasing rightwards and y-values increasing downwards >>> - Zero degrees points right >>> - Angles increase clockwise >>> - Used implicity by the following: >>> Scalable Vector Graphics (SVG) >>> CSS 2D Transforms >>> >>> Of the two that fall under the Graphical Angle method, afaict neither >>> uses absolute angles -- the zero point doesn't matter, only the clockwise >>> increase. Which makes SVG and Transforms compatible with the Bearing Angle >>> Method from a user perspective. >>> >>> This makes the gradient syntax the odd one out. Therefore its use of angles >>> should be >>> a) defined in the prose somewhere instead of implied by illustration >>> b) use the Bearing Angle Method, i.e. 0deg points up and angles increase >>> clockwise >>> >>> Furthermore, the CSS3 Values and Units module should make this convention >>> explicit so that later spec-writers don't make the same mistake. (Also, >>> the outdated reference to ACSS and the 0-360 normalization requirement >>> should be removed.) >> >> Argh, I was hoping I could avoid this, but it seems like I maybe can't. ;_; >> >> Anybody have any strong objection to me switching the <angle> >> reference to Bearing Angles? >> >> ~TJ >> > > Yes. Yes, you have a strong objection? Can you elaborate? I get the feeling that enough things use the "clockwise is positive" rule that it would be a losing battle to try and fight it - we'll just end up making the platform inconsistent, rather than shifting momentum in our preferred direction. Once that battle has been lost, I don't have a strong opinion on where 0deg should point, so having it point up is fine with me. I suspect that's the most intuitive direction for it. ~TJ

Received on Tuesday, 7 September 2010 22:59:17 UTC