W3C home > Mailing lists > Public > www-style@w3.org > February 2011

Re: [css3-2d-transforms] transform:matrix() questions

From: Oli Studholme <w3-style@boblet.net>
Date: Fri, 18 Feb 2011 22:57:14 +0900
Message-ID: <AANLkTiko93o83cb3Njd1xg6ogRaR+ehGeQnicm6owA4-@mail.gmail.com>
To: www-style <www-style@w3.org>
Hey all,

Thank you all for your input — it’s helped me understand things a lot
more. I have a couple of comments:

On Fri, Feb 18, 2011 at 10:14 AM, Dean Jackson <dino@apple.com> wrote:
> On Feb 17, 2011, at 10:33 AM, Oli Studholme wrote:
>> So could
>>    matrix(<number>, <number>, <number>, <number>, <number>, <number>)
>> be rewritten as
>>    matrix(<scaleX(sX)>, <skewY(tan(aY))>, <skewX(tan(aX))>,
>> <scaleY(sY)>, <translateX(tX)>, <translateY(tY)>)
> No, because you've left rotation out, and a transform can include multiple instances of the same transformation function. eg. transform: scale(10) rotate(5deg) scale(0.1) rotate(-5deg)

I figured that rotation was generated by combining skew and scale
transformations. Regarding multiple transformations, I was thinking
about it as the sum of the transformations. Regardless, I think it
would still be worthwhile to provide a slightly less confusing summary
to matrix() for the uninitiated, even if just to spell out that a
matrix transformation is an algebraic concept.

> It's not just rotations > 360 though. Anytime you're interpolating the matrix simplification of a list of transforms you're risking a different behaviour.

hmm, thanks for that — I hadn’t realised this was an issue.

On Fri, Feb 18, 2011 at 1:20 PM, Boris Zbarsky <bzbarsky@mit.edu> wrote:

> The simplest solution may be to take that first quoted bit out entirely;
> then we don't have to worry about matrix stuff except for matrix() itself,
> and that can be defined in terms of the explicit formula above.

This would have helped me realise the reason I didn’t understand the
definition of matrix() originally is that it contained math ;)

peace - oli studholme
Received on Friday, 18 February 2011 13:58:27 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:38:43 UTC