- From: Cyril Concolato <cyril.concolato@telecom-paristech.fr>
- Date: Fri, 01 Jun 2012 11:16:09 +0200
- To: www-svg@w3.org
Hi Olaf, Le 6/1/2012 10:51 AM, Dr. Olaf Hoffmann a écrit : > Cyril Concolato: > > >> [CC] Adding 1 in the scale transformation means going from scale(X) to > scale(X+1), therefore the neutral element is scale(0) which is the identity > matrix. > > scale(0) is not the identity matrix, this is obviously scale(1,1), Yes, sorry for the confusion. See my second post. > because > (0,0) = scale(0,0) * (x,y) and for arbitrary x,y it is of course in most > cases (x, y)<> (0,0); scale(0,0) is no representation of the identity matrix. > but > (x,y) = scale(1,1) * (x,y); scale(1,1) is a representation of the identity > matrix. > > On the other hand the identity matrix has nothing to do with additive > animation or the neutral element of addition, therefore there is no > need, that it is the same. The identiy matrix is the neutral element > of matrix multiplication, what is a completely different operation. > > For the operation of addition of matrices M: 0:=scale(0,0) represents > a neutral element M = M + 0 = 0 + M, but typically this is not very > important for transformations in SVG or CSS. Right, I think we should think of addition as composition. Cyril > > > The scale function could have been defined in the passed in > such a way, that the identity matrix results from the neutral > element of addtion, this works for example in this way: > scale(a,b) means scaling factors exp(a) and exp(b). > But this would exclude mirroring and is maybe more > difficult to estimate the effect for some authors. > A Taylor expansion approximation by replacing > exp(a) by (a+1) could save the mirroring, but not the > intuitive understanding of scaling. > Therefore there is no simple and intuitive solution to > satisfy all expectations - and too late to change the > definition anyway. > > Olaf >
Received on Friday, 1 June 2012 09:19:07 UTC