W3C home > Mailing lists > Public > public-fx@w3.org > April to June 2012

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

From: Dirk Schulze <dschulze@adobe.com>
Date: Sat, 28 Apr 2012 07:11:10 -0700
To: "Dr. Olaf Hoffmann" <Dr.O.Hoffmann@gmx.de>
CC: "www-style@w3.org" <www-style@w3.org>, "public-fx@w3.org" <public-fx@w3.org>
Message-ID: <F4A05C26-6C63-4389-8113-094070288BE5@adobe.com>

On Apr 25, 2012, at 9:52 AM, "Dr. Olaf Hoffmann" <Dr.O.Hoffmann@gmx.de> wrote:

> 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.
As a person with SVG background I agree to your comment. However, the CSS WG decision was to not include it to the transform list, since we focus on current implementations for this level (and no UA supports it in CSS transforms), it can be emulated (like you described above) and transform-origin is enough for most cases that are on HTML out there. This is not the case for SVG (and older content that still needs to be supported). For this reason it is at least required on supporting SVG.

> 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)
Well, I think transform origin is useful in general. And we see content for both, rotate with 3 arguments, an transform origin.
> 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.
Other content than SVG and HTML could use CSS transforms as well. But needs to define bounding box and the origin first.


> Olaf
Received on Saturday, 28 April 2012 14:11:40 UTC

This archive was generated by hypermail 2.3.1 : Monday, 22 June 2015 03:33:47 UTC