You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The first value specifies the distance between the origin of polar coordinates and the anchor point of the element. The second value may be omitted. If not so, it affects the calculated value of the first value.
@@ -542,7 +542,7 @@ One of the profits of polar coordinate system is performance improvement. The si
542
542
<p class="issue">
543
543
By 'polar-distance' property, a position of an element is specified based on the containing block's center. In other way, is the method of positioning elements by the distance based on the edge of the containing block needed?
The 'polar-anchor' property sets an anchor point of the element. The anchor point specifies a position which is a representative point of the element. The anchor point could be set as any point within a content area of the element rather than being positioned to the upper left corner of the element by CSS box model.
548
548
@@ -628,3 +628,74 @@ Is '<code>auto</code>' needed for value of 'polar-anchor'?
628
628
<p class="issue">
629
629
How to solve overflowing when an element has 'polar-anchor' value as '<code>top</code>', 'polar-angle' value is 0deg, and 'polar-distance' is equal to the distance from center to edge of containing block?
630
630
</p>
631
+
632
+
<h2 id="extending-svg-transform-functions">Rotate transformation for content in polar coordinates</h2>
The 'transform' property supports all transform functions by <a href="http://www.w3.org/TR/SVG/coords.html#TransformAttribute">The ''transform'' attribute</a> in [[SVG11]].
636
+
When elements are positioned in polar coordinates, there are many usecases which show the elements are rotated toward the origin of the polar coordinates. In such cases, the accurate rotation degree has to be specified in the 2d rotation function for each element. But when using the keyword value instead of the <<angle>> value, the calculation of accurate rotation degree may be omitted.
637
+
<br><br>
638
+
Therefore the two-dimensional rotation function 'rotate(<angle>)' used in polar coordinates is extended as follows:
The '<code>center</code>' keyword means that the element is rotated by the polar-angle value. Therefore, when the anchor point of an element is center point of the
643
+
element, a straight line passing through the anchor point meets the center point of the containing block.<br>
644
+
And for the '<code>counter-center</code>', the element is rotated by the angle of the polar-angle plus 180 degrees.
645
+
</p>
646
+
<div class='example'>
647
+
This example shows how the keyword value works in the 2d rotation function.
<ahref="#extending-svg-transform-functions"><spanclass="secno">7</span><spanclass="content">Rotate transformation for content in polar coordinates</span></a>
<br> The first value specifies the distance between the origin of polar coordinates and the anchor point of the element. The second value may be omitted. If not so, it affects the calculated value of the first value. <br><br> Values have the following meanings:
<pclass="issue" id="issue-8465ee32"><aclass="self-link" href="#issue-8465ee32"></a> How to position items to the edge of the containing block without overflowing it? (<i>polar-anchor</i> could be suggested) </p>
683
688
<pclass="issue" id="issue-1fb69d32"><aclass="self-link" href="#issue-1fb69d32"></a> One of the profits of polar coordinate system is performance improvement. The significant performance improvement can be seen in animation using the polar coordinates. How to define animation in the polar coordinates? Is there any difference between the conventional coordinates and the polar coordinates when animate elements? </p>
684
689
<pclass="issue" id="issue-6e7c10c1"><aclass="self-link" href="#issue-6e7c10c1"></a> By <aclass="property" data-link-type="propdesc" href="#propdef-polar-distance">polar-distance</a> property, a position of an element is specified based on the containing block’s center. In other way, is the method of positioning elements by the distance based on the edge of the containing block needed? </p>
<p> The <aclass="property" data-link-type="propdesc" href="#propdef-polar-anchor">polar-anchor</a> property sets an anchor point of the element. The anchor point specifies a position which is a representative point of the element. The anchor point could be set as any point within a content area of the element rather than being positioned to the upper left corner of the element by CSS box model. </p>
687
692
<p>With position: polar, the value of polar-distance is given to the distance between an anchor point and a center point of a containing block.</p>
<pclass="issue" id="issue-43dc3773"><aclass="self-link" href="#issue-43dc3773"></a> Is '<code>auto</code>' needed for value of <aclass="property" data-link-type="propdesc" href="#propdef-polar-anchor">polar-anchor</a>? </p>
771
776
<pclass="issue" id="issue-9a7a089f"><aclass="self-link" href="#issue-9a7a089f"></a> How to solve overflowing when an element has <aclass="property" data-link-type="propdesc" href="#propdef-polar-anchor">polar-anchor</a> value as '<code>top</code>', <aclass="property" data-link-type="propdesc" href="#propdef-polar-angle">polar-angle</a> value is 0deg, and <aclass="property" data-link-type="propdesc" href="#propdef-polar-distance">polar-distance</a> is equal to the distance from center to edge of containing block? </p>
777
+
<h2class="heading settled" data-level="7" id="extending-svg-transform-functions"><spanclass="secno">7. </span><spanclass="content">Rotate transformation for content in polar coordinates</span><aclass="self-link" href="#extending-svg-transform-functions"></a></h2>
The <aclass="property" data-link-type="propdesc" href="http://www.w3.org/TR/css3-2d-transforms/#propdef-transform">transform</a> property supports all transform functions by <ahref="http://www.w3.org/TR/SVG/coords.html#TransformAttribute">The <spanclass="css">transform</span> attribute</a> in <adata-link-type="biblio" href="#biblio-svg11">[SVG11]</a>.
781
+
When elements are positioned in polar coordinates, there are many usecases which show the elements are rotated toward the origin of the polar coordinates. In such cases, the accurate rotation degree has to be specified in the 2d rotation function for each element. But when using the keyword value instead of the <aclass="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-3/#angle-value"><angle></a> value, the calculation of accurate rotation degree may be omitted. <br><br> Therefore the two-dimensional rotation function 'rotate(
782
+
<angle>)' used in polar coordinates is extended as follows: </angle>
The '<code>center</code>' keyword means that the element is rotated by the polar-angle value. Therefore, when the anchor point of an element is center point of the
788
+
element, a straight line passing through the anchor point meets the center point of the containing block.<br> And for the '<code>counter-center</code>', the element is rotated by the angle of the polar-angle plus 180 degrees.
789
+
<p></p>
790
+
<divclass="example" id="example-2894752f">
791
+
<aclass="self-link" href="#example-2894752f"></a> This example shows how the keyword value works in the 2d rotation function.
<h3class="no-num heading settled" id="index-defined-elsewhere"><spanclass="content">Terms defined by reference</span><aclass="self-link" href="#index-defined-elsewhere"></a></h3>
873
945
<ulclass="indexlist">
946
+
<li>
947
+
<adata-link-type="biblio" href="#biblio-css-2d-transforms-1">[css-2d-transforms-1]</a> defines the following terms:
0 commit comments