x

Marker bei bestimmter Zoomstufe ausblenden


  1. Marker bei bestimmter Zoomstufe ausblenden · Marc Bellmann (Gast) · 06.09.2011 22:21 · [flux]

    Hi,

    ich arbeite seit gestern mit der openstreetmap API. Ich verwendete bisher die Google Map API.

    Beim Erstellen einer Map habe ich mich an dieses Tutorial gehalten: http://wiki.openstreetmap.org/wiki/OpenLayers_Marker Soweit so gut!

    Bei der Google Maps API konnte man beim Erstellen eines Markers angeben, in welchem Zoombereich dieser angezeigt wird. Gibt es eine Möglichkeit so etwas bei der openstreetmap api auch anzugeben? Hab weder im Forum noch bei google was gefunden. Ich hoffe hier kann mir jemand helfen.

    Vielen Dank für Antworten.


    • Re: Marker bei bestimmter Zoomstufe ausblenden · maxbe (Gast) · 06.09.2011 22:40 · [flux]

      Schau mal hier. Eigentlich das gleiche Problem, du müsstest dem layer mit den Markern noch ein maxResolution und minResolution mitgeben...


    • Re: Marker bei bestimmter Zoomstufe ausblenden · mkrebs (Gast) · 07.09.2011 11:50 · [flux]

      Gut, das hat mir auch gefehlt.

      var pois = new OpenLayers.Layer.Text( "My Points",
      { location:"./textfile.txt",
      projection: map.displayProjection,
      maxResolution: 77
      });
      map.addLayer(pois);

      Aber wie komme ich vom Beispiel oben hier zum Ziel?

      map.addLayer (new OpenLayers.Layer.PopupMarker("newlayer", {
      createIconFromData: function (data) {
      return new OpenLayers.Icon ("icons/"+data.pan+".png", {w:30,h:30});
      },
      createHtmlFromData: function (data) {
      return "<h3>"+this.html(data.town)+" usw usw..";},
      location: "datei.csv"}
      ));

      Das ist doch eine andere Funktion, wo und wie muss ich da "maxResolution" einfügen?
      Danke für eine Hilfe!


    • Re: Marker bei bestimmter Zoomstufe ausblenden · Lübeck (Gast) · 07.09.2011 13:08 · [flux]

      Hi !

      es gibt auch einen Weg die Berechnung der Werte für die Zoomstufen zu umgehen:

      vectorLabelLayer0 = new OpenLayers.Layer.Vector("label_country", {maxResolution: map.getResolutionForZoom(4), minResolution: map.getResolutionForZoom(8) });

      Gruß Jan :-)


    • Re: Marker bei bestimmter Zoomstufe ausblenden · maxbe (Gast) · 07.09.2011 14:39 · [flux]

      Kann ich nur raten, ich finde gerade keine Definition oder Quelltext-Beispiel zum abkupfern für "OpenLayers.Layer.PopupMarker". Ich würde es hier probieren...

      map.addLayer (new OpenLayers.Layer.PopupMarker("newlayer", {
      createIconFromData: function (data) {
      return new OpenLayers.Icon ("icons/"+data.pan+".png", {w:30,h:30});
      },
      createHtmlFromData: function (data) {
      return "<h3>"+this.html(data.town)+" usw usw..";},
      location: "datei.csv",maxResolution: 77}
      ));


    • Re: Marker bei bestimmter Zoomstufe ausblenden · Marc Bellmann (Gast) · 07.09.2011 21:44 · [flux]

      Vielen Dank! Meine Wünsche sind erfüllt!