User:Regina/MYDrafts4
Problems With Angle Definitions in ODF1.2
Coordinate System
There are two common ways to orientate a Cartesian coordinate system
mathematical orientation | Bild |
screen orientation | Bild |
Only when the orientation is determined, terms like "clockwise" are unambigious. Such orientation rule is missing in ODF 1.2.
Suggestion:
If a rule refers to a two-dimensional coordinate system, a Cartesian coordinate system in screen orientation (see figure ##) is used. The directions "clockwise", "counter clockwise", and the edge descriptions "left", "top", "right" and "button" are accordingly defined as shown in figures [##] to [##].
clockwise | Bild |
counter clockwise | Bild |
left, top, right, bottom | Bild |
Angles in Attribute draw:transform
These suggestions are all about section 19.228. (Because of the Wiki markup I skipped the characters < and >).
Original | Problems and Suggestions |
---|---|
The whole original text is very near to SVG section 7, but a reference is missing. | |
matrix(a b c d e f), specifies a transformation in the form of a transformation matrix of six values. "The values describe... | No problems, but the quotation mark before 'The values' has to be removed. |
rotate(rotate-angle), specifies a rotation by rotate-angle degrees about the origin of the shapes coordinate system. | The orientation of the rotation is missing. I suggest not to use "clockwise" but to define it by an equivalent matrix.
Suggestion: Example: The value rotate(25) is corresponds to matrix( cos(25 deg) sin(25 deg) −sin(25 deg) cos(25 deg) 0 0). ToDo: Matrix as 3x2, because if sin and deg it is not exactly the same as the value matrix. |
scale( sx [ sy ]), specifies a scale operation by sx and sy. | "scale operation" is acceptable, but I suggest to give the equivalent matrix here too, to make it uniform.
Suggestion: The value scale( s ) is equivalent to the value matrix( s 0 0 s 0 0). The value scale( sx sy ) is equivalent to the value matrix( sx 0 0 sy 0 0). |
skewX(skew-angle), specifies a skew transformation by rotate-angle degrees along the x-axis. | Typo: "rotate-angle" should be "skew-angle".
Here is neither clear between which rays the angle is measured, nor what direction is used. Suggestion: Example: The value skewX(25) corresponds to matrix( 1 0 tan(25deg) 1 0 0) with a in degrees. In addition a picture is useful. The term "skew" might be unknown, the term "shear mapping" is more common. |
skewY(skew-angle), specifies a skew transformation by rotate-angle degrees along the y-axis. | Same as skewX. Typo "rotate-angle" and unclear angle.
Suggestion: Example: The value skewY(25) is equivalent to the value matrix( 1 tan(25 deg) 0 1 0 0). Bild |