Andrea,<br><br>thanks for these estimates / stats.<br><br>I think such use case could benefit a lot from my patch (low memory footprint) but thread-safe cached / reused arrays/ LineIteratorData / StrokerData / DasherData.<br>
<br>As I said to Jim, there are two sort of problems:<br>- memory handling (growable arrays) has to be smart (auto - tune)<br>- clipping issues (dasher, stroker) and spatial resolution (no cpu/memory waste)<br><br><br>2013/3/30 Andrea Aime <span dir="ltr"><<a href="mailto:andrea.aime@geo-solutions.it" target="_blank">andrea.aime@geo-solutions.it</a>></span><br>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="im">On Fri, Mar 29, 2013 at 3:16 PM, Laurent Bourgès <span dir="ltr"><<a href="mailto:bourges.laurent@gmail.com" target="_blank">bourges.laurent@gmail.com</a>></span> wrote:<br>
</div><div class="gmail_extra"><div class="gmail_quote"><div class="im">


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Andrea,<br><br></div>It could be very interesting if you could provide some concrete example about your map server: typical image height / width, shape complexity (number, size, path sizes ...). <br>



</div></div></blockquote><div><br></div></div><div>It's all over the place. Image size: from 256x256 to 10000x10000, number of shapes, from a few hundreds to a few millions, path sizes, from say 10 points</div><div>
to thousands (the code already makes sure there are no two consequent points sitting in the same pixel before trying to draw them),</div><div>stroke wise it can be simple or using dasharrays.</div><div class="im"><div> </div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div dir="ltr"><div>
<br>Ideally if you could write a test class (sample) computing a single image it would be very helpful for me to compare my patched pisces vs current one.</div></div></blockquote><div> </div></div><div>I don't have anything ready, the existing code loads data from spatial database, sets up styles from XML descriptions, turns each spatial db geomety in java shapes</div>


<div>and so on. But I guess I could concoct something close enough.</div><div>I'm writing some code to gather statistics about the shapes that are actually painted (scrolling over the path iterators) and then I'll try to make a randomized</div>

<div>shape painter that gets close to those stats.</div></div></div></div></blockquote><div><br>Great news ! I am waiting your test code to perform few benchmarks.<br><br>I am using J2DBench but it does not perform such complex drawing (complex shapes ...) or multi threading tests (parallel drawings on buffered images)<br>
<br>Laurent<br></div></div>