<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/123239/">https://git.reviewboard.kde.org/r/123239/</a>
     </td>
    </tr>
   </table>
   <br />





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Not entirely sure where I should put levelForResolution(qreal resolution). I'd like to keep it private (as well as resolutionForLevel). It would be nice to have both methods in the same place (in the private lineString class) but given that resolutionForLevel is needed in the linestring and levelForResolution is needed in the projection I guess they need to be kept in different places.</p></pre>
 <br />









<p>- Torsten Rahn</p>


<br />
<p>On April 3rd, 2015, 1:22 nachm. UTC, Torsten Rahn wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for Marble, Bernhard Beschow, Dennis Nienhüser, Marius Stanciu, and Thibaut Gridel.</div>
<div>By Torsten Rahn.</div>


<p style="color: grey;"><i>Updated April 3, 2015, 1:22 nachm.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
marble
</div>


<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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Allow for automatically assigning detail values to the nodes inside a linestring.
This mechanism is used for PN2 parsing in this patch.
Taking the detail level into account this approach improves geometry layer performance by 20% on my i7 based machine.
This patch also fixes the "backwards" semtantic meaning of ViewportParams::resolve()
In the next step this optimization could also be applied during KML and OSM parsing.</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Tested manually using the Atlas map, Plain map and Political map without apparent regressions. "make test" runs fine.
Checked the geometry layer values by starting Marble with --runtimeTrace. On average the msec values are about 20% lower on my machine (and I hope that improvement is even better on slower CPUs).
Ideas for unit tests regarding this patch are welcome. ;-)</p></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>src/lib/marble/ViewportParams.cpp <span style="color: grey">(bca8ea9)</span></li>

 <li>src/lib/marble/geodata/data/GeoDataCoordinates.h <span style="color: grey">(610b423)</span></li>

 <li>src/lib/marble/geodata/data/GeoDataLineString.h <span style="color: grey">(4e4e3da)</span></li>

 <li>src/lib/marble/geodata/data/GeoDataLineString.cpp <span style="color: grey">(8864518)</span></li>

 <li>src/lib/marble/geodata/data/GeoDataLineString_p.h <span style="color: grey">(2c7b9ec)</span></li>

 <li>src/lib/marble/projections/AbstractProjection.cpp <span style="color: grey">(591adc0)</span></li>

 <li>src/lib/marble/projections/AbstractProjection_p.h <span style="color: grey">(7bbfcb5)</span></li>

 <li>src/lib/marble/projections/AzimuthalProjection.cpp <span style="color: grey">(d6e7376)</span></li>

 <li>src/lib/marble/projections/CylindricalProjection.cpp <span style="color: grey">(42345ab)</span></li>

 <li>src/plugins/runner/pn2/Pn2Runner.cpp <span style="color: grey">(fd363c8)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/123239/diff/" style="margin-left: 3em;">View Diff</a></p>






  </td>
 </tr>
</table>







  </div>
 </body>
</html>