W3C home > Mailing lists > Public > www-style@w3.org > September 2010

Re: [css3-images] [css3-values] Inconsistent Angles

From: Tab Atkins Jr. <jackalmage@gmail.com>
Date: Tue, 7 Sep 2010 14:20:25 -0700
Message-ID: <AANLkTikCbKrMGav3Khy=46vXUp=4LLri7YmRHJ6q+Xt-@mail.gmail.com>
To: fantasai <fantasai.lists@inkedblade.net>
Cc: "www-style@w3.org" <www-style@w3.org>
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
Received on Tuesday, 7 September 2010 21:21:18 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:31 GMT