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

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
@boblet

Received on Friday, 18 February 2011 13:58:27 UTC