Ich habe einen Punkt auf dieser Karte hinzugefügt, der jedoch statisch ist.
Wie kann ich die Größe dieses Punkts beim Zoomen ändern?
Karte beim Verkleinern
quelle
Ich habe einen Punkt auf dieser Karte hinzugefügt, der jedoch statisch ist.
Wie kann ich die Größe dieses Punkts beim Zoomen ändern?
Karte beim Verkleinern
Die Größe ändern , als @Mapperz erwähnte, ist wahrscheinlich der Weg.
Alternativ können Sie den Stil der Ebene ändern , wenn Sie viele Punkte haben, anstatt alle Punkte zu durchlaufen, deren Größe geändert wirdpointRadius
sodass die Änderung für alle Funktionen in einem Aufruf erfolgt. Ich kann nicht sicher sagen, was eine bessere Leistung ist, aber ich würde mir vorstellen, den Stil zu ändern, wenn es viele Punkte gibt.
Die Styling-Methode hat Nachteile, da sie nicht so viele Optionen bietet wie die Größenänderung (Skalierung, Ursprung, Verhältnis), sondern nur einen Radius.
Ändern Sie die Größe von Features programmgesteuert mit Openlayers v2.12
map.addLayer(vectorLayer);
map.setCenter(new OpenLayers.LonLat(point.x, point.y), 5);
vectorLayer.addFeatures([pointFeature, lineFeature, polygonFeature]);
}
var origin = new OpenLayers.Geometry.Point(-111.04, 45.68);
function resizeFeatures(scale) {
pointFeature.geometry.resize(scale, origin);
lineFeature.geometry.resize(scale, origin);
polygonFeature.geometry.resize(scale, origin);
vectorLayer.redraw();
}
http://dev.openlayers.org/releases/OpenLayers-2.12/examples/resize-features.html Ansicht> Quelle
Sie können einen Stil festlegen, der den Punktradius abhängig vom Zoomlevel der Karte berechnet:
quelle