banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GEODATA DAYS 2024

#1 Sat 01 September 2012 09:13

mrousse83
Juste Inscrit !
Date d'inscription: 1 Sep 2012
Messages: 2

OpenLayers : Comment centrer la carte sur les marqueurs placés dessus?

Bonjour,

J'ai une carte Open Street Map affichée sur une page Web via OpenLayers et sur laquelle j'affiche un grand nombre de marqueurs.

Je voudrais que la carte se centre sur les marqueurs et que le zoom s'adapte afin que tous les marqueurs présents dessus soient affichés.

J'utilise le code suivant :

Code:

function InitialiserCarte()
{
    var map = new OpenLayers.Map("carte");
    var layer =  new OpenLayers.Layer.OSM("Simple OSM Map");
    map.addLayer(layer);
    
    var interventions = new OpenLayers.Layer.Text("Interventions", {
        location: "xxx/interventions_markers.php",
        projection: map.displayProjection
    });
    map.addLayer(interventions);
    
    map.zoomToExtent();
}

Mais le centrage et le zoom ne fonctionnent pas...

Pouvez-vous m'aider à faire fonctionner cette partie ?

Merci,
Mathieu

Dernière modification par mrousse83 (Sat 01 September 2012 09:13)

Hors ligne

 

#2 Sat 01 September 2012 22:42

michel56
Participant assidu
Lieu: Lorient
Date d'inscription: 14 Jul 2012
Messages: 474

Re: OpenLayers : Comment centrer la carte sur les marqueurs placés dessus?

Regardes ici.

http://georezo.net/forum/viewtopic.php?id=59896

Il faut définir la zone à afficher avec: maxExtent: new OpenLayers.Bounds()


Opérateur cartographique & DAO & PHP.

Hors ligne

 

#3 Sun 02 September 2012 10:46

mrousse83
Juste Inscrit !
Date d'inscription: 1 Sep 2012
Messages: 2

Re: OpenLayers : Comment centrer la carte sur les marqueurs placés dessus?

Bonjour,

Avec votre réponse, j'ai réussi à faire ce que je voulais !

Un grand MERCI !

Voici mon bout de code :

Code:

var bbox = new OpenLayers.Bounds(coord[0], coord[1], coord[2], coord[3]).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());
map.zoomToExtent(bbox);

Mathieu

Hors ligne

 

Pied de page des forums

Powered by FluxBB