W3C home > Mailing lists > Public > www-style@w3.org > November 2012

Re: [css3-transforms] Multiplication order

From: Boris Zbarsky <bzbarsky@MIT.EDU>
Date: Sun, 11 Nov 2012 23:32:16 -0800
Message-ID: <50A0A600.70205@mit.edu>
To: Dirk Schulze <dschulze@adobe.com>
CC: "www-style@w3.org" <www-style@w3.org>
On 11/11/12 9:12 AM, Dirk Schulze wrote:
> On Nov 11, 2012, at 8:03 AM, Boris Zbarsky <bzbarsky@MIT.EDU> wrote:
>> http://lists.w3.org/Archives/Public/www-style/2011May/0633.html and
> This is addressed in the specification.

Which "this"?  You seem to be talking about the second issue raised in 
the above mail, while Simon's problem is with the first issue.

> The mathematical description section defines how the transformation function gets "translated" into a 4x4 matrix.

Yes.  What it doesn't define is how that matrix actually acts on points.

> Simon correctly pointed to the section "The Transform Rendering Model"[1] that describes how to multiply transformation functions:
> ""
> 	• Start with the identity matrix.
> 	• Translate by the computed X, Y and Z values of ‘transform-origin’
> 	• Multiply by each of the transform functions in ‘transform’ property from left to right
> ""

Simon's point is that "multiply" can be done in two different ways and 
the spec does not actually clearly define which way to use.

> To get the local transformation matrix of the current element you do the following (note local transformation matrices transform the local coordinate space and are not the CTM):

Ah, yes.  For the transformation on coordinate space, you multiply in 
the opposite order from the transformation on points.

> That is what the specification says, no?

Sort of.  I still think the text in section 6 should be more explicit 
about the multiplication instead of relying on other parts of the spec 
to actually explain what it means.

Received on Monday, 12 November 2012 07:32:47 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:39:05 UTC