- From: SVG Working Group repository <cam+svgwgrepo@mcc.id.au>
- Date: Wed, 19 Jun 2013 06:34:37 -0700
- To: public-svg-wg@w3.org
details: https://svgwg.org/hg/svg2/rev/5ba0309b98f6
branches:
changeset: 518:5ba0309b98f6
user: tbah <tavmjong@free.fr>
date: Wed Jun 19 15:32:32 2013 +0200
description:
Changed <hatch angle> to <hatch rotate>, limit <hatchPath stroke> to solid paint servers per resolutions at Tokyo F2F.
diffstat:
master/pservers.html | 39 ++++++++++++++++++++++-----------------
1 files changed, 22 insertions(+), 17 deletions(-)
diffs (229 lines):
diff --git a/master/pservers.html b/master/pservers.html
--- a/master/pservers.html
+++ b/master/pservers.html
@@ -1780,55 +1780,52 @@ lines are needed.</p>
an object using one or more pre-defined paths that are repeated
at fixed intervals in a specified direction to cover the
areas to be painted. Hatches are defined using a <a>'hatch'</a>
element and then referenced by properties <a>'fill'</a> and
<a>'stroke'</a> on a given <a>graphics element</a> to indicate that the
given element shall be filled or stroked with the hatch.
Paths are defined by <a>'hatchPath'</a> elements.</p>
-<p>Attributes <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a>, <a>'angle'</a>,
+<p>Attributes <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a>, <a>'rotate'</a>,
and <a>'hatchUnits'</a> define an infinitely long reference strip
on the infinite canvas. The strip has one edge at
(<var>x</var>, <var>y</var>) and its other edge at a distance
-of <var>pitch</var> in the direction defined by <var>angle</var>.
+of <var>pitch</var> in the direction defined by <var>rotate</var>.
This one-dimension tiling theoretically extends a series of such
-strips in the direction of 'angle' to infinity (positive and
+strips in the direction of 'rotate' to infinity (positive and
negative), with strips starting at
-(<var>x</var> + m*<var>pitch</var>*cos(<var>angle</var>), <var>y</var> + m*<var>pitch</var>*sin(<var>angle</var>)
+(<var>x</var> + m*<var>pitch</var>*cos(<var>rotate</var>), <var>y</var> + m*<var>pitch</var>*sin(<var>rotate</var>)
for each possible integer value of <em>m</em>.</p>
<div class="figure">
<img
alt="A diagram showing the layout of a series of strips."
src="images/pservers/hatch_attributes.svg"/>
<p class="caption">Three adjacent strips separated by dashed lines
showing their relationship to each other for a
- given <var>pitch</var> and <var>angle</var>. The reference line
+ given <var>pitch</var> and <var>rotate</var>. The reference line
determines the origin of <a>'hatchPath'</a>s.
</p>
</div>
-<p class="issue">Check that angle defined in same sense as other
- angles is SVG (clockwise/counter-clockwise, etc.).</p>
-
<edit:elementsummary name='hatch'/>
<p class="issue">Review content model.</p>
<h3 id="HatchElementAttributes">Attributes</h3>
<dl class="attrdef-list-svg2">
<dt id="HatchElementHatchUnitsAttribute"><span class="adef">hatchUnits</span></dt>
<dd>
<p>
Defines the coordinate system for attributes
- <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a> and <a>'angle'</a>.
+ <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a> and <a>'rotate'</a>.
</p>
<dl class="attrdef-svg2">
<dt>Value</dt> <dd>userSpaceOnUse | objectBoundingBox</dd>
<dt><a>Lacuna value</a></dt> <dd>objectBoundingBox</dd>
<dt><a>Animatable</a></dt> <dd>yes</dd>
@@ -1836,17 +1833,17 @@ for each possible integer value of <em>m
<dl class="attrdef-values">
<dt>userSpaceOnUse</dt>
<dd>
<p>
If <span class="attr-value">hatchUnits="userSpaceOnUse"</span>,
- <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a>, and <a>'angle'</a>
+ <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a>, and <a>'rotate'</a>
represent values in the coordinate system that results
from taking the current user coordinate system in place at
the time when the <a>'hatch'</a> element is referenced
(i.e., the user coordinate system for the element
referencing the <a>'hatch'</a> element via a
<a>'fill'</a> or <a>'stroke'</a> property) and then
applying the transform specified by attribute
@@ -1856,17 +1853,17 @@ for each possible integer value of <em>m
</dd>
<dt>objectBoundingBox</dt>
<dd>
<p>
If <span class="attr-value">hatchUnits="objectBoundingBox"</span>,
the user coordinate system for attributes
- <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a>, and <a>'angle'</a>
+ <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a>, and <a>'rotate'</a>
is established using the bounding box of the element to
which the hatch is applied
(see <a href="coords.html#ObjectBoundingBox">Object
bounding box units</a>) and then applying the transform
specified by attribute <a>'hatchTransform'</a>.
Percentages represent values relative to the bounding box
for the object.
@@ -1959,17 +1956,17 @@ for each possible integer value of <em>m
<dt><a>Animatable</a></dt> <dd>yes</dd>
</dl>
</dd>
<dt id="HatchElementXAttribute"><span class="adef">x</span></dt>
<dd>
<p>
- <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a> and <a>'angle'</a>
+ <a>'x'</a>, <a>'y'</a>, <a>'pitch'</a> and <a>'rotate'</a>
indicate how the hatch strips are placed and spaced. These
attributes represent coordinates and values in the coordinate
space specified by the combination of
attributes <a>'hatchUnits'</a>
and <a>'hatchTransform'</a>.
</p>
<dl class="attrdef-svg2">
@@ -2012,29 +2009,33 @@ for each possible integer value of <em>m
A negative value is an error
(see <a href="implnote.html#ErrorProcessing">Error
processing</a>). A value of zero disables rendering of the
element (i.e., no paint is applied).
</p>
</dd>
- <dt id="HatchElementAngleAttribute"><span class="adef">angle</span></dt>
+ <dt id="HatchElementRotateAttribute"><span class="adef">rotate</span></dt>
<dd>
<p>
See <a>'x'</a>.
</p>
<dl class="attrdef-svg2">
<dt>Value</dt> <dd><a><angle></a></dd>
<dt><a>Lacuna value</a></dt> <dd>0</dd>
<dt><a>Animatable</a></dt> <dd>yes</dd>
</dl>
+ <p class="annotation">
+ Changed name from 'angle' to 'rotate' at Tokyo F2F.
+ </p>
+
</dd>
<dt id="HatchElementHrefAttribute"><span class="adef">xlink:href</span></dt>
<dd>
<p>
An <a href="linking.html#IRIReference">IRI reference</a> to a
different <a>'hatch'</a> element within the current SVG
document fragment. Any attributes which are defined on the
@@ -2069,28 +2070,27 @@ path to be created at the bounds of the
hatch which goes outside of the hatch strip will be clipped. Note that
if the <a>'overflow'</a> property is set
to <span class="prop-value">visible</span> the area outside must be
rendered (NB this is different from a <a>'pattern'</a>
element). Strips with higher <var>x</var> (larger <var>m</var>) values
must be rendered after strips with lower <var>x</var>
(lower <var>m</var>) values.</p>
-<p class="issue">The default should probably be visible.</p>
<p>The contents of the <a>'hatch'</a> are relative to a new coordinate
system. The new coordinate system has its origin at
(<var>x</var>, <var>y</var>), where <var>x</var> is established
by the <a>'x'</a> attribute on the <a>'hatch'</a> element,
and <var>y</var> is established by the <a>'y'</a> attribute on
the <a>'hatch'</a> element. The coordinate system is rotated around
-the origin by the angle given by the <a>'angle'</a> attribute.
+the origin by the angle given by the <a>'rotate'</a> attribute.
</p>
-<p class="issue">The viewBox and preserveAspectRatio attributes are
+<p class="annotation">The viewBox and preserveAspectRatio attributes are
not useful and have been removed (as compared to the pattern element).</p>
<p><a href="script.html#EventAttributes">Event attributes</a> and
<a href="svgdom.html#EventListeners">event listeners</a> attached
to the contents of a <a>'hatch'</a> element are not processed;
only the rendering aspects of <a>'hatch'</a> elements are
processed.</p>
@@ -2098,17 +2098,17 @@ processed.</p>
<p>The following illustrates a very simple <a>'hatch'</a> fill:</p>
<!--
<edit:example href='images/pservers/pattern01.svg' name='hatch01'
description='fill a rectangle by referencing a hatch paint server' image='yes' link='yes'/>
-->
<div class="example">
<pre><![CDATA[
-<hatch pitch="5" angle="135">
+<hatch pitch="5" rotate="135">
<hatchPath stroke="#a080ff" stroke-width="2"/>
</hatch>
]]></pre>
<div class="figure">
<img
alt="A hatch example with parallel lines filling a rectangle at a 45 degree angle."
src="images/pservers/hatch01.png"/>
<p class="caption">A hatch with a single <a>'hatchPath'</a>.
@@ -2202,16 +2202,21 @@ first path instruction uses for its curr
(<var>x</var>,<var>0</var>) where <var>x</var> is the <var>x</var>
value of the last data point given in the path. If the first path
command is not a "moveto" and the last not a "closepath", the last
point of each repeating section is joined to the first point of the
next repeating section with the current value
of <a>'stroke-linejoin'</a>.
</p>
+<p>A hatch path can have any of the stroke style properties applied to it, however only
+solid color paint servers are allowed for the <a>'stroke'</a> property.</p>
+
+<p class="annotation">Limiting 'stroke' to solid paint servers was resolved at the Tokyo F2F.</p>
+
<!--
<edit:example href='images/pservers/pattern01.svg' name='hatch01'
description='fill a rectangle by referencing a hatch paint server' image='yes' link='yes'/>
-->
<div class="example">
<pre><![CDATA[
<hatch hatchUnits="userSpaceOnUse" pitch="6">
<hatchPath stroke-width="1" d="c 0,4 8,6 8,10 8,14 0,16 0,20"/>
Received on Wednesday, 19 June 2013 13:35:10 UTC