<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/100254/">http://git.reviewboard.kde.org/r/100254/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On December 27th, 2010, 11:16 p.m., <b>Jan Hambrecht</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="http://git.reviewboard.kde.org/r/100254/diff/1/?file=5715#file5715line103" style="color: black; font-weight: bold; text-decoration: underline;">plugins/pathshapes/enhancedpath/EnhancedPathCommand.cpp</a>
<span style="font-weight: normal;">
(Diff revision 1)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">bool EnhancedPathCommand::execute()</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">103</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="n">qreal</span> <span class="n">sweepAngle</span> <span class="o">=</span> <span class="n"><span class="hl">degSweepAngle</span></span><span class="p"><span class="hl">(</span></span><span class="n">points</span><span class="p">[</span><span class="n">i</span><span class="o">+</span><span class="mi">2</span><span class="p">].</span><span class="n">x</span><span class="p">()<span class="hl">,</span></span><span class="hl"> </span><span class="n"><span class="hl">points</span></span><span class="p"><span class="hl">[</span></span><span class="n"><span class="hl">i</span></span><span class="o"><span class="hl">+</span></span><span class="mi"><span class="hl">2</span></span><span class="p"><span class="hl">].</span></span><span class="n"><span class="hl">y</span></span><span class="p"><span class="hl">(),</span></span><span class="hl"> </span><span class="kc"><span class="hl">false</span></span><span class="p"><span class="hl">)</span>;</span></pre></td>
<th bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">103</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="n">qreal</span> <span class="n">sweepAngle</span> <span class="o">=</span> <span class="n"><span class="hl">points</span></span><span class="p"><span class="hl">[</span></span><span class="n"><span class="hl">i</span></span><span class="o"><span class="hl">+</span></span><span class="mi"><span class="hl">2</span></span><span class="p"><span class="hl">].</span></span><span class="n"><span class="hl">y</span></span><span class="p"><span class="hl">()</span></span><span class="hl"> </span><span class="o"><span class="hl">-</span></span><span class="hl"> </span><span class="n">points</span><span class="p">[</span><span class="n">i</span><span class="o">+</span><span class="mi">2</span><span class="p">].</span><span class="n">x</span><span class="p">();</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The ODF specification does really lack in that section. The sweeping angle is to be determined from start to end angle. But the direction of the sweep is not specified at all. So you never know which side of the ellipse should be drawn (i.e. clockwise or counter-clockwise). The old code always forced the sweep to be counter-clockwise.
I am not sure which is better, do you?</pre>
</blockquote>
<p>On December 28th, 2010, 11:06 a.m., <b>Lassi Taneli Nieminen</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">My thinking here was that there's no need to specify the direction in the spec as it can be always calculated based on the end angle.
Eg. if start angle is 180: case1 end angle 90, 90-180 = -90 <-counter clockwise, case2: end angle 450: 450-180 = 270 -> clockwise</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The problem with that is that you never know the intention of the application which wrote the start and end angle.</pre>
<br />
<p>- Jan</p>
<br />
<p>On December 27th, 2010, 9:17 p.m., Lassi Taneli Nieminen wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.orgrb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for Calligra.</div>
<div>By Lassi Taneli Nieminen.</div>
<p style="color: grey;"><i>Updated 2010-12-27 21:17:13</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Few fixes to pathshape/enhancedpath
1. In T the parameters are w/h, to get radiuses they should be divided by two
2. Allow T to have sweep angle to both directions as odf spec does not limit it to one direction.
3. The move after T had wrong y axis direction
4. When loading odf, load viewBox before evaluating path. This because path may have references to w,h,l,r,t,b and those are defined
from viewBox.
Feel free to ignore changes to rest of the files.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>filters/kpresenter/pptx/PptxXmlSlideReader.cpp <span style="color: grey">(206ccdf)</span></li>
<li>filters/libmsooxml/ComplexShapeHandler.h <span style="color: grey">(d1c78e3)</span></li>
<li>filters/libmsooxml/ComplexShapeHandler.cpp <span style="color: grey">(622af85)</span></li>
<li>filters/libmsooxml/MsooXmlCommonReaderDrawingMLImpl.h <span style="color: grey">(eb03cf9)</span></li>
<li>filters/libmsooxml/MsooXmlCommonReaderDrawingMLMethods.h <span style="color: grey">(d5732fc)</span></li>
<li>filters/libmsooxml/MsooXmlCommonReaderImpl.h <span style="color: grey">(138e797)</span></li>
<li>filters/libmsooxml/MsooXmlCommonReaderMethods.h <span style="color: grey">(e99c747)</span></li>
<li>filters/libmsooxml/generated/generatedShapes.h <span style="color: grey">(f8b3b2a)</span></li>
<li>filters/libmsooxml/generated/generator.cpp <span style="color: grey">(72e8c0a)</span></li>
<li>filters/words/docx/DocxXmlDocumentReader.h <span style="color: grey">(d7fb2f5)</span></li>
<li>filters/words/docx/DocxXmlDocumentReader.cpp <span style="color: grey">(231a3e7)</span></li>
<li>plugins/pathshapes/enhancedpath/EnhancedPathCommand.cpp <span style="color: grey">(7fcd453)</span></li>
<li>plugins/pathshapes/enhancedpath/EnhancedPathShape.cpp <span style="color: grey">(2c26294)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/100254/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>