[css3-2d-transforms] skew(a,b)

The specification of skew(a,b) refers to the SVG specification but that does not provide an equivalent matrix.

Assuming
  A = tan(a)
  B = tan(b)

skewX(a) is equal to the matrix:

[1 A 0]
[0 1 0]
[0 0 1]

skewY(b) is equal to the matrix:

[1 0 0]
[B 1 0]
[0 0 1]

skewX(a) x skewY(b) is equal to the matrix:

[AB+1    A    0]
[   B    1    0]
[   0    0    1]

skewY(b) x skewX(A) is equal to the matrix:

[   1    A    0]
[   B AB+1    0]
[   0    0    1]

But I think that (based on my research on chrome (webkit)) that skew(a,b) should be:
[1 A 0]
[B 1 0]
[0 0 1]

It certainly makes sense.

Received on Wednesday, 2 June 2010 15:34:38 UTC