Mehr

Verwenden Sie OpenLayers 3 oder 2, um Ebenen von Google Maps und Mapserver hinzuzufügen?

Verwenden Sie OpenLayers 3 oder 2, um Ebenen von Google Maps und Mapserver hinzuzufügen?


Ich bin Anfänger in OpenLayers und beginne mit den www.openlayers.org-Dokumenten, die OpenLayers 3 verwenden, um die Grundlagen von OpenLayers zu vermitteln. Nun möchte ich Layer von Google Maps und Mapserver hinzufügen, kann dies aber in den Dokumenten nicht finden.

Ich habe viele Websites gefunden, die sich auf meine Fragen beziehen, aber alle verwenden eine andere Syntax, von der ich denke, dass sie mit OpenLayers 2 zusammenhängt.

  • würdest du für einen anfänger ol3 oder ol2 empfehlen?
  • Wenn Sie ol3 empfehlen, wo finde ich die Neuerungen in der ol3-Syntax?

Wenn Sie mit einer Google-Basiskarte arbeiten müssen, wird OpenLayers 2 Ihre Anforderungen erfüllen. Wie in einer OpenLayers 3-Ausgabe von @ahocevar angegeben,

Es wird keine ol.source.GoogleMaps geben, es sei denn, Google ändert seine Richtlinien und erlaubt den direkten Zugriff auf seine Kartenkacheln.

Ihre einzige Chance, Google mit OpenLayers 3 zu verwenden, besteht darin, eine Basiskarte ohne Steuerelemente mit der Google Maps-API zu erstellen und dann eineol.KarteInstanz darüber. Sie müssen die Zoomstufen und das Ansichtsfenster der beiden DOM-Elemente synchronisieren. Ein Beispiel finden Sie hier.

Die ausführliche Antwort von @John Barça zu den Unterschieden der beiden OpenLayers-Bibliotheken sagt am Anfang alles, was Sie über sie wissen müssen. IMO, Sie sollten OpenLayers 3 verwenden, da es OL2 sehr bald überwuchern wird. Versuchen Sie, die API von OL3 zu konsultieren, wenn Sie nicht weiterkommen.

Wenn Sie auf ein Problem stoßen, das Sie mit der API oder den Mailinglisten nicht lösen können, zögern Sie nicht, es auf GIS StackExchange zu teilen, die Community wird versuchen, Ihnen zu helfen.


Das ist eine sehr schwer zu beantwortende Frage. OpenLayers 2 war sehr erfolgreich und es ist einfach, Beispiele für fast alles zu finden. OpenLayers 3 ist komplett neu geschrieben und verwendet das Google Closure-Toolkit, das eine Reihe nützlicher Dienste bietet: Codekomprimierung, Ereignisbehandlung, Cross-Browser-Unterstützung usw. OpenLayers 3 verwendet auch webGL-Rendering, wenn es verfügbar ist, das superglatte Raster und Vektor-Rendering und (demnächst die Integration der virtuellen 3D-Welt über Caesium).

Der Hauptnachteil von OpenLayers 3 ist derzeit, dass es weniger Beispiele und weniger Leute mit Fähigkeiten gibt, anderen zu helfen, entweder auf IRC-Sites, auf dieser Site-Sites, auf Mailinglisten usw. Ich denke auch, dass die Lernkurve wahrscheinlich steiler ist, aber leistungsfähiger und einfacher zu erweitern ist, wenn Sie diesen Schritt gemacht haben. OpenLayers 3 ist eine komplette Neufassung, nur um es klarzustellen. Während einige der Konzepte von 2 auf 3 übertragen werden, Kacheln, Geometrien und Ebenen, müssen Sie erneut mit 3 beginnen.

Ich bin versucht zu sagen, dass Sie für einen Anfänger OpenLayers 2 verwenden sollten, aber mein Kopf sagt, dass OpenLayers 3 die Zukunft ist, und jetzt mit etwas mehr Mühe zu gehen, um später viel mehr zu gewinnen. Entschuldigung, eine solche Frage führt zwangsläufig zu einer auf dem Zaun sitzenden Antwort.

Der grenzenlose Blog enthält einige großartige Informationen zu OL3, die Ihnen bei der Entscheidung helfen könnten. BEARBEITEN: Wie Gabor anmerkte, verwendet das Google Maps-Beispiel Google Map-Kacheln nicht direkt, sondern bettet ein Google Map-Div in die Seite ein, und dies wird sich nicht ändern, es sei denn, Google ändert seine Richtlinie zur Kachelnutzung.

Hinweis zu Mapserver: Dies ist eine Serverplattform, die Daten in einer Reihe von Formaten, Vektor und Raster, erzeugt, zB WMS, WFS aus einer Reihe von Quellen. Sie werden also keine Beispiele finden, die sich direkt mit Mapserver befassen. Suchen Sie stattdessen nach Beispielen, die WMS, WFS verwenden, und laden Sie Ihre Mapserver-Details als Teil der Quelle. Gleiches gilt für Geoserver.


Schau das Video: WebGIS Development from scratch using Geoserver, Openlayers 6 and Postgis