OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

office message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] (OFFICE-4027) 19.145 draw:enhanced-path - issues with definition of behavior


     [ https://issues.oasis-open.org/browse/OFFICE-4027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Francis Cave updated OFFICE-4027:
---------------------------------
    Resolution: 
_*Editorial note*: {color:#ff8b00}Coloured{color} text has been inserted in resolution of OFFICE-3710. The Description of Command G has been inserted in resolution of OFFICE-4026. The Descriptions of Commands T and U have been modified in resolution of OFFICE-4027._

_Table 10 - Enhanced path commands_
||Command||Name||Parameters||Description||
|A|arcto|(x1 y1 x2 y2 x3 y3 x4 y4) +|(x1, y1) and (x2, y2) define the bounding box of an ellipse. A line is then drawn from the current point to the start angle of the arc that is specified by the radial vector of point (x3, y3) and then {color:#000000}counter-clockwise{color} to the end-angle that is specified by point (x4, y4). {color:#ff8b00}The intersection of the radial vector of point (x4, y4) with the ellipse becomes the new current point.{color}|
|B|arc|(x1 y1 x2 y2 x3 y3 x4 y4) +|The same as the âAâ command, except that an implied moveto to the starting point is done.|
|C|curveto|(x1 y1 x2 y2 x y) +|Draws a cubic BÃzier curve from the current point to (x,y) using (x1,y1) as the control point at the beginning of the curve and (x2,y2) as the control point at the end of the curve. {color:#ff8b00}The point (x, y) becomes the new current point.{color}|
|F|nofill|(none)|Specifies that the current set of sub-paths will not be filled.|
|L|lineto|(x y) +|Draws a line from the current point to (x, y). If followed by multiple coordinate pairs, they are all interpreted as lineto. {color:#ff8b00}The point (x, y) becomes the new current point in each case.{color}|
|âG|arcangleto|(wR hR st sw) +|Draws an arc of an ellipse. The ellipse is given by the width 2*wR, and the height 2*hR. The arc is specified by the start angle st in degrees and the swing angle sw in degrees. The ellipse is positioned so that the current point is the start point of the arc. The arc is drawn so that sw is the central angle of the arc. If sw is positive, the arc is drawn clockwise; if sw is negative, the arc is drawn counter-clockwise. The endpoint of the arc becomes the new current point.
 In case the path is filled, the filling is drawn as an ellipse segment.
 The swing angle may be greater than 360Â and may be smaller than -360Â. In such cases the fill will overlap.|
|M|moveto|(x y) +|Start a new sub-path at the given (x,y) coordinate. If a moveto is followed by multiple pairs of coordinates, they are treated as lineto. {color:#ff8b00}The point (x, y) becomes the new current point in each case.{color}|
|N|endpath|(none)|Ends the current set of sub-paths. The sub-paths will be filled by using the âeven-oddâ filling rule. Other following subpaths will be filled independently. {color:#ff8b00}The current point becomes undefined.{color}|
|Q|quadraticÂcurveto|(x1 y1 x y)+|Draws a quadratic BÃzier curve from the current point to (x, y) using (x1, y1) as the control point. (x, y) becomes the new current point at the end of the command.|
|S|nostroke|(none)|Specifies that the current set of sub-paths will not be stroked.|
|T|angleÂellipseto|(x y wR hR t0 t1) +|Draws a segment of an ellipse. The ellipse is specified by the center(x, y), the width 2*wR, the height 2*hR.
 The arc is specified by the start-angle t0 in degrees and end-angle t1 in degrees. The angles may be of any value, but are used modulo 360Â with range 0Â <= angle < 360Â to get start and end point of the arc. The angles specify radial vectors. The start and end point of the arc are the intersection of these vectors with the ellipse. In case the start point equals the end point, only in case \|t1 â t0\| = 360Â a full ellipse is drawn, otherwise an arc of 0Â central angle is drawn. The orientation of the angles is the same as in command G, see figure nnn.
 The segment is drawn clockwise.
 {color:#ff8b00}The point of the ellipse, which is specified by the end-angle t1 becomes the new current point.{color}|
|U|angleÂellipse|(x y wR hR t0 t1) +|The same as the âTâ command, except that no current point is required but an implied moveto to the starting point is done and thus no line to the start point is drawn..|
|V|clockwiseÂarc|(x1 y1 x2 y2 x3 y3 x4 y4)+|The same as the âAâ command, except that an implied moveto to the starting point is done and the arc is drawn clockwise.|
|W|clockwiseÂarcto|(x1 y1 x2 y2 x3 y3 x4 y4) +|The same as the âAâ command except, that the arc is drawn clockwise.|
|X|ellipticalÂquatrantx|(x y) +|Draws a quarter ellipse, whose initial segment is tangential to the x-axis from the current point to (x, y). For each additional quarter ellipse command, the axis to which the segment is tangential to switches from x to y and from y to x. {color:#ff8b00}The point (x, y) becomes the new current point in each case.{color}|
|Y|ellipticalÂquadranty|(x y) +|Draws a quarter ellipse, whose initial segment is tangential to the y-axis from the current point to (x, y). For each additional quarter ellipse command, the axis to which the segment is tangential to switches from y to x and from x to y. {color:#ff8b00}The point (x, y) becomes the new current point in each case.{color}|
|Z|closepath|(none)|Close the current sub-path by drawing a straight line from the current point to current sub-path's initial point. {color:#ff8b00}The pathâs initial point becomes the new current point.{color}|

{color:#ff8b00}If the value of the draw:enhanced-path attribute does not follow the specified syntax, the behavior is undefined. This includes the case, that a command expects a current point, but the current point is undefined.{color}

*Note:* The value of the {{draw:enhanced-path}} attribute is based upon [SVG] Â8.3.

> 19.145 draw:enhanced-path - issues with definition of behavior
> --------------------------------------------------------------
>
>                 Key: OFFICE-4027
>                 URL: https://issues.oasis-open.org/browse/OFFICE-4027
>             Project: OASIS Open Document Format for Office Applications (OpenDocument) TC
>          Issue Type: Bug
>            Reporter: Patrick Durusau
>            Priority: Major
>             Fix For: ODF 1.4
>
>
> The word "segment of ellipse" is misleading. No application draws a segment, but all draw an arc, and in case of filling, a filling in shape of a sector.
> The meaning of the angles it not clear. Examples: t0=0, t1=360 generates a full ellipse in applications. What rendering is expected for t0=-10, t1=350 (negative values), or for t0=350, t1=240 (start > end), of for t0=30, t1=480 (difference > 360) ?



--
This message was sent by Atlassian Jira
(v8.3.3#803004)


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]