Die API-Dokumentation für OpenLayers.Feature.Vector besagt, dass Vector selbst keine Methoden hat.Wie OpenLayers Vector programmgesteuert verschieben?
Ich weiß, wie Benutzer den Vektor verschieben können, indem Sie OpenLayers.Control.DragFeature Steuerelement zu Karte hinzufügen. Wenn also der Benutzer den Vektor verschieben kann, muss er auch programmatisch verschoben werden können. Aber ich kann nicht herausfinden, wie es geht.
Okay, ich bin jetzt in der Lage 'OpenLayers.Geometry.Point.move()' Methode zu verwenden, um die Funktion um einen gewissen Betrag zu bewegen. Aber ich muss das Feature an einen bestimmten Ort verschieben. Gibt es einen einfachen Weg das zu tun oder muss ich den Betrag berechnen, um den ich es verschieben muss? –
Die Verschiebungsmethode funktioniert, indem die X- und Y-Eigenschaften in der Geometrie ausgeglichen werden. Wenn Sie einen Punkt verwenden (wie oben angegeben), können Sie Folgendes tun: Funktion movePoint (Punkt, x, y) { point.x = x; point.y = y; point.clearBounds(); } Sie können hier einen Punkt an der Quelle einen Blick für die Bewegung: http://trac.openlayers.org/browser/trunk/openlayers/lib/OpenLayers/Geometry/Point.js mit komplizierteren Geometrien Arbeiten wird mehr Arbeit erfordern. Schauen Sie sich die Move-Implementierung für Collection hier an: http://trac.openlayers.org/browser/trunk/openlayers/lib/OpenLayers/Geometry/Collection.js – atogle
Danke, die movePoint() -Funktion funktioniert gut. –