[Bug 9235] An additional useful transformation would be Perspective.

https://www.w3.org/Bugs/Public/show_bug.cgi?id=9235

--- Comment #9 from Axel Dahmen <brille1@hotmail.com> 2012-03-11 21:20:35 UTC ---
Thank you for putting this on the new schedule.

I can't provide a sample implementation, I'm afraid. However I can provide a
small presentation demonstrating the expected result.

Here's the URL to the file:

https://skydrive.live.com/?cid=f18aeca352311e71&id=F18AECA352311E71!236&sff=1



While working on the presentation I noticed that a _function_ does not quite
yield the most flexibility. There would be a second function necessary to be
able to read the currently computed Canvas 2D Context corner position values.

So I'd like to amend my suggestion to not provide a Transformation/Perspective
function but to add a Transformation object property to the Context object. (I
will continue to use my suggested type/property names for now to be consistent.
I do not presume any naming scheme here.)

The Transformation object returned by the 2D Context object should in turn
provide four properties representing each of the four Context corners. The type
of each of these properties would be TransformationPoint, providing a delta X
and a delta Y value.



Here's the suggested type definition:

Transformation := {"upperLeft":new TransformationPoint()
                  ,"upperRight":new TransformationPoint()
                  ,"lowerLeft":new TransformationPoint()
                  ,"lowerRight":new TransformationPoint()
                  }

TransformationPoint := {dX:0, dY:0}



Using this definition it would later even be possible to do spline kind of
transformations by defining two spline point positions with each
TransformationPoint object. These spline point positions would be given
relative to the TransformationPoint object's values.

Given the spline extension, the TransformationPoint class would look like this:

TransformationPoint := {dX:0
                       ,dY:0
                       ,bezierClockwise:new TransformationPoint()
                       ,bezierCounterClockwise:new TransformationPoint()
                       }


RFC
Axel Dahmen

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Sunday, 11 March 2012 21:20:40 UTC