Hi Regina,
good to start that. The definitions for draw:transform are correct AFAIS.
Concerning the coordinate system mess:
The two possible orientations of coordinate system are needed when you
want to define 'clockwise' and 'counter-clockwise'.
Instead, speaking about 'positive orientation' and 'negative
orientation' in the mathematical sense is independent from the
orientation where mathematical 'positive orientation' means (in both
cases) that the rotation starts on (1,0), goes through the first
quadrant and ends at (0,1).
I would use the independent description. Together with the information
that AOO uses (in all 2D cases) the screen orientation the result is
that 'positive orientation' goes 'clockwise'.
This definitions are missing and adding them will be fine. They still do
not describe the existing problem with angles (except the ones in
draw:transform and 3D). They are numerically *mirrored*, independent
from the definition of the orientation.
Thus the current state:
- Screen orientation is used in core, api and odf
- mathematically correct 'positive orientation' goes 'clockwise'
- draw:angle is 'wrong' because it is numerically mirrored, it goes
'counter-clockwise', but resides in the same orientation
Example: draw:angle(300) (in 0.1 degrees, another problem, independent
from orientation) is not for lines, but *if* applied to a line from
(0,0) to (1,0) on the X-Axis the line would be rotated 30 degrees
anti-clockwise (!) in the current offic(es). The line will point from
bottom-left to up-right.
To get what you want (and what would be mathematically correct with the
given definitions), an angle of -300 (or 3300 what is 3600 - 300) has to
be used.
Example the other way around: A line from (0,0) to (1,1), thus from
top-left to bottom-right on screen *should* have a rotation value of 45
degrees. The API value for rotation (do not know the exact name right
now) will not give you 450, but 3150, which is 3600-450. ARGH!
Thus the error(s) with draw:angle are:
- It's in 10th of degrees and not documented as that
- It's numerically mirrored, *independent* from the orientation
On 09.08.2012 15:39, Regina Henschel wrote:
Hi all,
I have written a mail to OASIS, that I think that a lot of angle
definitions are not clear enough. It seems that the committee is willing
to discuss the problem. I have therefore started with section "19.228
draw:transform" in spec ODF 1.2 part 1.
You find my concerns and suggestions on
http://wiki.services.openoffice.org/wiki/User:Regina/MYDrafts4.
I plan to show that to the OASIS committee. But first I like to know
your ideas. So please have a look.
Kind regards
Regina