x

Re: Einfache Polyline


Geschrieben von ikonor (Gast) am 06. September 2012 22:14:25: [flux]

Als Antwort auf: Einfache Polyline geschrieben von Ghostrider82 (Gast) am 13. Januar 2011 11:38:

Ghostrider82 wrote:

Gibt es eine Möglichkeit, "alte" Punkte aus der Pointlist zu entfernen, diese alten Punkte von der Karte zu entfernen, damit es temporärer zu keiner Überlastung des Browsers kommt?

Noch ein paar theoretische Ideen (nicht getestet):

• regelmäßig simplify aufrufen, um überflüssige Punkte zu entfernen, siehe Simplify a LineString geometry Beispiel.
• evtl. ist es einfacher, den Anfangs-/End-Punkt im Feature direkt hinzuzufügen/zu entfernen (macht aber vermutlich fürs Rendering keinen Unterschied):
vlayer.getFeatureBy...().geometry.addPoint / getVertices + removePoint und anschließend vermutlich vlayer.drawFeature
• Der Canvas Renderer scheint etwas schneller bei vielen Features zu sein (benötigt HTML5 Browser!)
• vage Idee: da der Canvas IMO ein Zeichenbereich ist, der normalerweise immer komplett gelöscht und neu gezeichnet wird, könnte man evtl. den Renderer manipulieren, so dass er nicht löscht, sondern die alten Linien stehen läßt. Damit könnte man immer nur das hinzugefügte Stück der Linie zeichnen. Beim Zoomen müsste man dann aber trotzdem die kompletten Linien neu zeichnen, beim Verschieben vermutlich nach einem gewissen Puffer auch.

Gruß,
Norbert