Re: [css-transforms] suggestion: single transformation function by simply giving edge positions

Actually, in fact, my suggestion is not specific. On the contrary, it's the 
most generic form compared to all other transformation functions:

Using a syntax like:
{transform: Point(10%, 10%) Point(-10%, 10%) Point(-10%, -10%) Point(-30%, 
10%);}

it would be possible to replace:
  * matrix()
  * translate()
  * translateX()
  * translateY()
  * scale()
  * scaleX()
  * scaleY()
  * rotate()
  * skew()
  * skewX()
  * skewY()
... all at the same time, by just one single function call.

E. g., scale(x, y) would be equivalent to
{transform: Point(-x, -y) Point(x, -y) Point(-x, y) Point(x, y);}

Still, the other functions might be retained in the specification, but in 
fact they might just be implemented as macros, calling transform() with 
appropriate parameters.


Using my suggestion the user can freely transform any element in any way, 
just with a single call. Instead of declaring, e.g.:

{transform:  scale(10% 20%)  skewX(10%)  translateY(10%);}

the user would just write a generic:
{transform: Point(0%, -10%) Point(20%, -10%) Point(0%, 30%) Point(20%, 
30%);}


Authors would be able to write applications with element handles, enabling 
the user to freely move, scale any edge of the element separately.

Cheers,
Axel 

Received on Friday, 8 August 2014 12:28:39 UTC