Michael Bergbauer schrieb:
> On Mon Apr 28, 2008 at 09:2715AM +0200, Wolfgang Silbermayr wrote:

[...]

>> Die Funktion g.fillPolygon(polygon); in
>> org/openstreetmap/josm/data/osm/visitor/MapPaintVisitor.java Zeile 228
>> im aktuellen SVN benötigt nach meinen Messungen über 1 Sekunde, wenn ich
>> ein Polygon so anzeigen lasse, dass es die gesamte Zeichenfläche
>> ausfüllt. Sind mehrere übereinander liegende Polygone im Bild, so kann
>> es durchaus mal bis zu 5 Sekunden dauern, bis ein Zoomschritt
>> durchgeführt wurde.
> 
> Kannst du mir bitte den TestCase, mit dem du hier gearbeitet hast,
> zukommen lassen? Ich wuerde mir das gerne genauer anschauen. 

Du kannst im Grunde jede halbtransparent ausgefüllte Fläche nehmen. Ich
hab zum Beispiel den Wald verwendet, der unter
http://openstreetmap.org/?lat=48.00573&lon=13.9938&zoom=17&layers=0BFT
zu sehen ist.

Zum Überprüfen der Zeit habe ich noch ein paar Zeilen Code eingefügt,
diff siehe unten.

Lg, Wolfgang.

===================================================================
--- MapPaintVisitor.java        (Revision 621)
+++ MapPaintVisitor.java        (Arbeitskopie)
@@ -13,6 +13,7 @@
 import java.awt.geom.GeneralPath;
 import java.util.Collection;
 import java.util.LinkedList;
+import java.util.Calendar;

 import javax.swing.ImageIcon;

@@ -225,7 +226,11 @@
                g.setColor( w.selected ?
                                selectedColor : coloura);

+    Calendar start = Calendar.getInstance();
                g.fillPolygon(polygon);
+    Calendar end = Calendar.getInstance();
+    long difference = end.getTimeInMillis() - start.getTimeInMillis();
+    System.out.println("Printed polygon. Time: " + difference + "ms");
        }

        // NEW


_______________________________________________
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/talk-de

Antwort per Email an