Re: [css3-transforms] 2D Transform Function rotate

Jeremie Patonnier:

>
> Now that CSS Transform, specified the transform-origin property, there is
> no need to specify the center of the rotation inside the rotate function
> itself. So it make sens to preserve the legacy SVG notation for backward
> compatibility, but there is no need to make things more complex by making
> this notation mandatory.
>

I cannot see a relevant relation between the origin and the rotation center.
The one point has typically nothing to do with the other ;o)
Obviously you can always note translate(x y) rotate(alpha) translate(-x -y), 
whatever the origin is, but there is always the risk not only for beginners 
to put the '-' on the wrong side and of course to note rotate(alpha x y) is
much shorter, avoids redundancies and errors and is better understandable, 
if an author is not familiar with matrices and coordinate system conversions.

I think typically transform-origin is almost useless for SVG content.
This is similar to the origin attribute of animateMotion from SMIL -
it is important, if you apply SMIL animateMotion for example to (X)HTML,
but for SVG is has no importance.
Therefore we can savely assume, that a notation like rotate(alpha x y)
will remain more relevant in the future of SVG as some additional
origin definition will be - maybe some authors will find use cases
for an additional origin - who knows. Many already found use cases
for not rotating around the origin, however ;o)

For CSS transform applied to (X)HTML or other text content in
XML (if this will be allowed as well, currently it seems excluded -
what limits the usefulness of the current draft as well, but such an
exclusions seems to be ignored anyway by browsers interpreting
already parts of CSS transform) this origin property is quite 
important, because one typically does not know exactly, 
where in the document an element is - but maybe often it will
be more effective with absolute positioning to know, where you
are. However, once you set the origin, nevertheless you might 
want to rotate around another point more relevant for your 
problem - and do other transformations relative to the origin.


Olaf

Received on Wednesday, 25 April 2012 16:52:28 UTC