[OpenLayers-Users] Dynamically moving markers?
Michael Nosal
mnosal at mitre.org
Thu Jun 11 17:16:50 EDT 2009
Yes, I'm working on just that.
Get the new position for your marker, create a new OpenLayers.LonLat
for it.
var newLonLat = new OpenLayers.LonLat(nextPos.lon, nextPos.lat);
Get the Px position for that point on your map:
var newPx = g_map.getLayerPxFromLonLat(newLonLat);
myMarker.moveTo(newPx);
--Mike
On Jun 9, 2009, at 3:33 AM, Juuso Räsänen wrote:
>
> Hello all,
>
> I would like to create a map with dynamically moving markers (or
> features). So something like this...
> http://transport.wspgroup.fi/hklkartta/
>
> ...
> but much simpler (at least in the beginning) and, of course, utilizing
> OpenLayers insted of GMaps. Well, Have you seen ANYTHING similar
> implemented with OpenLayers? Any, even very simple, examples? For me
> it
> seems that OpenLayers doesn't provide any (higher level) APIs for
> doing things like that.. Correct?
>
> I did some proof-of-concept
> tests by periodically calling the following function. It works :), but
> of course there is a lot of coding todo.. :|
>
> // A function for moving marker to specified lonlat location.
>
> // OpenLayers seems to provide only pixel-based moveTo - method...
>
> function setLonLat(marker, lonlat) {
>
> if (lonlat != null) {
>
> marker.lonlat = lonlat;
>
> if (marker.map != null) {
>
> var px = marker.map.getLayerPxFromLonLat(marker.lonlat);
>
> if (px != null) {
>
> marker.draw(px);
>
> }
>
> }
>
> }
>
> }
>
>
> BR,
> - Juuso
More information about the Users
mailing list