incubator-ooo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Regina Henschel <>
Subject Re: Definition of draw:angle in ODF1.2 does not fit to implementation
Date Thu, 02 Aug 2012 13:04:51 GMT
Hi all,

Armin Le Grand schrieb:
>      Hi Dennis (and others),
> We should not mix up varios themes here (maybe I started doing so, I
> apologize). We have two things here:
> (a) Non-SVG Gradient definitions (old ones)
> (b) Angle definitions in various places
> There is no general problem with (a), except the contained angle and
> it's orientation. Thus I talk more about (b) where (b) is about the old
> gradients with use <draw:angle> currently, but also start/end angles in
> circle/ellipse shapes.
> The Object rotation does not have a direct and single rotation attribute
> (AFAIK, there is svg:x, svg:y, svg:width/height, but no svg:angle), but
> has to use (and does use) a transformation when rotation is needed
> (which uses angles correctly, no problem there).
> Using a 2nd 'rigorously-defined' angle would be sufficient here. As
> mentioned in earlier mails, SVG has <angle> as basic data type (see SVG
> 4.2). It is already listed in ODF 1.2, see 18.3.1 of ODF spec (Does this
> mean it could already be used?). It is even referenced as data type in
> draw:angle, draw:start-angle and draw:end-angle (!), see e.g. 19.112
> draw:angle in ODF1.2 which says: 'The draw:angle attribute has the data
> type angle 18.3.1'. When this would be true, draw:angle would not even
> be needed since it's identical to svg:angle already (which it is not,
> another error?).
> Thus I suggest allowing both in <draw:gradient> and <draw:opacity>, with
> ---
> <draw:angle> is the inverted rotation in 10th of a degree as integer
> value (no longer reference 18.3.1 and say it's equal).

I support the idea to define it directly for the 0.1 degree cases, 
independently of a reference. I'm not sure, whether "invert rotation" is 
really clear. Is it possible to add a picture to the spec? Then it would 
be possible to show the axis, the gradient vector and a concrete angle.

> <svg:angle> is the rotation as defined by SVG (including being float and
> supporting deg, rad and grad).
> If <svg:angle> is present, it has precedence over <draw:angle>. For
> compatibility, please support both when creating ODF documents.
> ---

I have searched in the spec where the data type angle is referenced. I 
add my findings here. All tests are only for AOO.

> Other candidates wit this problem are (not sure when marked with '?'):
> 19.140 draw:end-angle
> 19.213 draw:start-angle

They are used with unit 1 degree. They use decimal values. The values in 
the UI are the same as in file format. A positive angle in file format 
is shown as counterclockwise on screen.

> 19.226 draw:text-rotate-angle (?)
> 20.95 draw:caption-angle (?)

For both I don't know an object that uses it. How can I generate such an 

> 20.339 style:rotation-angle (?)

used for text direction of axis tick labels in charts. A positive value 
in file format is shown counterclockwise on screen.

> 20.375 style:text-rotation-angle (?)

Used for character rotation 90° or 270°. I know no other use.

(20.2) chart:angle-offset (used in Pie-chart)

All three use unit 1 degree. style:text-rotation-angle has a constraint, 
that the value must be integer.

20.17 dr3d:end-angle (used in 3D rotation objects for not full rotation)
19.209 draw:rotation (used for hatches)
19.112 draw:angle (used for gradient and opacity)

All three use unit 0.1 degree.

The orientation of draw:rotation and draw:angle is counterclockwise on 
screen for a positive angle in file format.

(19.161) draw:extrusion-rotation-angle (used for custom shapes in 
extruded state)
(19.104) dr3d:shadow-slant (used for shadow of 3D-scene)

Both use unit 1 degree. draw:extrusion-rotation-angle has no UI with 
direct input but uses buttons with 5 degree steps.


Kind regard

View raw message