DE:Rendering

From OpenStreetMap Wiki
Jump to navigation Jump to search

an unequal sign

Dieser Artikel ist eine deutsche Übersetzung des Originals (in der Regel auf Englisch), aber der Inhalt scheint unvollständig oder nicht aktuell zu sein! Bitte aktualisiere diese Übersetzung, wenn möglich.


Das Rendern einer Karte bedeutet, aus rohen Geodaten eine fertige Karte zu erstellen. Erstellt werden Rasterbilder oder Raster-Kacheln, es können aber auch Karten in Vektor-basierten Formaten erzeugt werden. "3D-Rendern" ist eine weitere Variante. Karten in verschiedenen Stilen oder Hervorhebung von speziellen Interessen erstellen zu können, ist sehr interessant. Softwareentwickler in und um die Gemeinschaft von OpenStreetMap haben ein großes Angebot an Programmen geschaffen, um die OpenStreetMap-Daten zu rendern. Die Daten können auch in andere Datenformate umgewandelt werden, um von verschiedenen Render-Programmen verwendet werden zu können.

Rendern auf OpenStreetMap-Servern

Die besten Beispiele von gerenderten OSM-Daten sind auf der Openstreetmap-Hauptseite zu finden. Klicke auf die Schaltfläche Ebenen (oben rechts, viertes Symbol von oben), um zwischen den verschiedene Ansichten zu hin- und herzuschalten. Dort gibt es mehrere Ansichten von Mapnik einschließlich der Standard-Ansicht. Um mehr über die Infrastruktur von Renderern und Anzeigen der Kachelkartenstiel zu erfahren, siehe Komponenten. Über die Schaltfläche Legende (kleines i oben rechts, fünftes Symbol von oben)

Es gibt eine nahezu grenzenlose Flexibilität in Sachen Rendern. Der größte Teil der Render-Software unterstützt eine Art von stylesheet, um Dinge wie Farbe, Linienbreiten, Textorientierung, Icons für Orte von Interesse und viele subtile visuelle Faktoren zu beeinflussen.

Server und Kommandozeilentools

Name Ziel Plattformen Ziel Sprachen Lizenz Bemerkungen
AlaCarte Windows, Linux N/A AGPL
Kartograph plattformunabhängig Python AGPL Python framework zum Erzeugen von SVG Karten
Kothic plattformunabhängig Python unbekannt eine MapCSS/0.2 Python Rendering-Engine.
LunaRender Windows Lua MIT XML2SVG Renderer
Mapnik Windows, macOS, Linux C++, JavaScript, Python, Ruby, Java LGPL Benötigt PostgreSQL und verschiedenen C++-Bibliotheken. Es wurde auf hohe Geschwindigkeit hin optimiert und eignet sich gut für die Kachel-Generierung auf Hochleistungsservern. Mapnik ist aber nicht besonders einfach einzurichten.
MapOSMatic plattformunabhängig Python AGPLv3 kann Karten mit Straßennetz und -verzeichnis. Geschrieben in Python/Django + Mapnik
node-mapbox-gl-native Node.js JavaScript BSD Node.js Paket zum Rendern von Mapbox Vektor Kacheln mit OpenGL
osmCache Java EE Java proprietär Ein Java EE-Servlet zum Steuern des Renderns und erneuten Renderns von Kacheln mit Mapnik.
Smrender plattformunabhängig C GPLv3 Eine in C geschriebene Regelbasierte Rendering-Engine
TileServer GL Plattformunabhängig BSD Kachelserver für Raster und Vektor Kacheln.
TileSweep unbekannt C, JSX unbekannt Kachelserver mit Vorrendern mit Hilfe von libmapnik.

Clientseitige GUI-Anwendungen

Name Ziel Platform Lizenz Bemerkungen
Hardware accelerated real-time rendering .Net Proprietär benutzt Grafikkarten zum Rendern von Bildern in Echtzeit, statt vorgerenderte Kacheln anzuzeigen
Kendzi3d Java SE BSD Plugin für JOSM. Erlaubt es, die editierten OSM-Daten in 3D anzusehen
Kosmtik Node.js WTFPL CartoCSS Stilentwicklungstool (Stilvorschau) basierend auf Mapnik.
Maperitive Windows, macOS, Linux Proprietär Desktop-Rendering-Anwendungist die aus lokalen Dateien (.osm, .osm.bz2 und GPX) , mit Rendering-Regeln aus einer Textdatei arbeitet. Erzeugt BMP-, PNG- und SVG-Ausgabe. Nicht für Hochleistungs-Rendering oder große Datenmengen konzipiert, aber einfach einzurichten und flexibel und eine gute Option für einmaliges Rendering (z. B. eine Karte Ihrer Stadt). Es hat auch einen Kachelgenerator, Schummerung, Höhenschattierung, und viele andere Funktionen. Läuft unter Windows, Linux, Mac. Geschrieben in C #
OSM2World Java SE LGPL Java-Tool, welches aus OSM-Daten detailierte 3D-Modelle erstellt
OSMBuildings JavaSript ... Java-Tool, welches aus OSM-Daten 3D-Modelle erstellt
OSM go JavaScript LGPL Java-Tool, welches aus OSM-Daten einfache 3D-Modelle mit selektierbaren OSM-Objekten erstellt
TileMill Windows, macOS, Linux 3-clause BSD CartoCSS ist eine spezielle Lösung, um eine benutzerbestimmte Rendering von Mapnik zu benutzen.
TopoMapCreator Windows GPLv2 Desktop Anwendung basierend auf Mapnik. Es erstellt automatisch topografische Karten aus OSM-, NASA- und ESA-Daten. Wählen Sie einen Kartenausschnitt (durch Ziehen über eine Weltkarte), klicken Sie auf den Startknopf und warten Sie, bis die Ausgabe von GeoTIFF, ECW, GALILEO, ORUXMAPS oder NAVIMAP </ s> "nicht mehr Weiterentwickelt"
XNavigator Java SE GPLv2 OSM in 3D

Clientseitige Bibliotheken

Hauptartikel: Frameworks
Name Ziel Platformen Ziel Sprachen Lizenz Bemerkungen
Cartagen Web JavaScript MIT - HTML5 Canvas/JavaScript-basierte Renderprogramm
Carto Mobile SDK Android, iOS, Windows Phone Java, Objective-C++, Swift, C# BSD Unterstützt 3D-Stadt-Overlays, bearbeitbare Vektor-Overlays und ist in hohem Maße anpassbar.
CartoType Windows, iOS, Android, macOS, Unix C++ Proprietär ist ein Multi-OS Render- und Routenplanungsbibliothek unter Lizenz. Läuft auf Desktop & Mobile Windows und auf Symbian OS. Geschrieben in C++.
GLMap iOS, Android Objective-C, Swift, Java Proprietär Offline oder online Vektor Karten rendern auf Geräten mit OpenGL ES
Halcyon Flash ActionScript WTFPL ist ein AS3 (ActionScript) Renderbibliothek , entwickelt von Richard Fairhurst und wird inPotlatch2 genutzt
Kartograph Web JavaScript LGPL JavaScript-Bibliothek zum Anzeigen von generierten Vektorkarten in einem beliebigen Browser
Kothic JS Web JavaScript BSD Voll ausgestattete JavaScript-Map-Rendering-Engine mit HTML5-Canvas. Es wurde ursprünglich als JavaScript-Port von Kothic entwickelt.
libosmscout Linux, macOS, iOS, Windows, Android, Qt C++, Java LGPL Bietet einfache, Schnittstellen zu Offline-Rendering- und Routing-Funktionen, die auf OpenStreetMap-Daten basieren.
Mapbox Android SDK Android Java BSD Zeigt Mapbox Vektorkacheln in einer Slippy-Map mit OpenGL ES an
Mapbox GL JS Web JavaScript BSD Zeigt Mapbox Vektorkacheln in einer Slippy-Map mit WebGL an
Mapbox iOS SDK iOS Objective-C, Swift, Interface Builder BSD Zeigt Mapbox Vektorkacheln in einer Slippy-Map mit OpenGL ES an.
Mapbox macOS SDK macOS Objective-C, Swift, Interface Builder, AppleScript BSD Zeigt Mapbox Vektorkacheln in einer Slippy-Map mit OpenGL an
Mapbox Qt SDK Qt C++ BSD Zeigt Mapbox Vektorkacheln in einer Slippy-Map mit OpenGL an
Mapbox SceneKit SDK iOS Objective-C, Swift ISC Stellt Daten zum Generieren benutzerdefinierter 3D-Szenen in SceneKit bereit.
Mapbox Unity SDK Cross-platform C# Apache Stellt Daten zum Generieren benutzerdefinierter 3D-Szenen in Unity bereit.
Mapsforge Android, Java ME Java LGPLv3 freies, offenes Toolbox, das der Gemeinschaft ermöglicht, einfach neue auf OSM-basierte Programme zu erstellen. Benötigt Tools und APIs, die Möglichkeiten für Karten-Rendern, Routenplanung und -navigation, POI auflisten und suchen, Karten überlagern und mehr haben. Geschrieben in Java, Zielplattformen scheinen Android-Geräte zu sein.
osm2x3d Web JavaScript LGPLv3 OSM 3D Konverter mit nativem WebGL Rendering (x3dom JS library)
Tangram Web JavaScript MIT 2D- und 3D-Kartenrenderer mit WebGL
Tangram ES Android, iOS, Linux, macOS C++ MIT 2D- und 3D-Kartenrenderer mit GL ES

Historisch

Die folgenden Renderer werden nicht mehr gepflegt sind aber aus historischen Interesse:

  • Mapweaver - Successor of mapgen.pl Perl rendering, OSM to SVG and with Inkscape to PNG or PDF, automatic map key. Supports street and POI lists, grids and coordinate overlays. Automatic extraction of desired place out of OSM file. Not running under Windows.
  • Memphis – a map-rendering application and a library for OpenStreetMap written in C using eXpat, Cairo and GLib. It's licensed under the terms of the GNU Lesser General Public License.
  • Osm2pov - Tool, um isometrische Karten von OSM-Daten zu erstellen
  • Osmarender – XSLTs, das aus OSM-XML-Daten SVG-Grafiken erzeugt. tiles@home war ein Projekt, das Osmarender nutzte, um eine Kachel-Reihe für eine Ansicht neben Mapnik zu schaffen, aber Osmarender kann auch eine gute Option sein, einmalig zu rendern. SVG-Formate ermöglichen es, die verbesserten Änderungen sofort zu umsetzen (siehe andere Option weiter unten). Es wurde am 1. März 2012 von der Hauptkarte auf osm.org entfernt.
  • osmbrowser – kann große Gebiete aus OSM-Daten laden und sie in Vektorgrafiken rendern.
  • osmrender.pl - simple maps easily drawn with a Perl program. Uses *.osm as input.
  • Pyrender – eine Sammlung von Ideen, und einige Codes in Python für verschiedene Rendern-Server Schritte
  • TileMill CartoCSS ist eine spezielle Lösung, um eine benutzerbestimmte Rendering von Mapnik zu benutzen.
  • VTM – cross-platform vector tile renderer developed by the OpenScienceMap project

Andere Renderer, einschließlich Vektor-Renderer:

  • Mapgen.pl - Perl rendering, OSM to SVG and with Inkscape to PNG or PDF, automatic map key. Supports street and POI lists, grids and coordinate overlays. Automatic extraction of desired place out of OSM file. Not running under Windows.
  • PHP rendering – Renderprogramm geschrieben in PHP. Nicht mehr unterstützt.
    • Phprender – aktualisierte Version des obigen

Kogutowicz - Eine erweiterbare, Mehrzweck-Java-basierte Render-Engine. Das Projekt ist unter Entwicklung. Zurzeit nicht durch Endnutzern verwendbar.

  • Cobra – aufgegeben. Net/mono Render-Engine mit SVS und Raster Ausgabe
  • Ceyx - .osm Analysator und MapCSS Render-Programm unter aktiven Entwicklung MapCSS ist die stylesheet-Sprache, verwendet von Halcyron, um den Blick auf die Karte zu beschreiben und wenn du schon mit HTML 5 gearbeitet hast, wirst du dich wie zuhause fühlen. Ceyx benötigt python, python-cairo and pygtk (für pango/pangocairo).
  • MapDiff generiert Animationen. Geschrieben in D

3D Render-Programme

  • OpenStreetMap 3D - OSM in 3D als eine Web-Seite
  • ShugenDoMap - Multi-Plattform 3D-Echtzeit Renderprogramm. Speziell gemacht für mobile Plattformen wie Smartphones oder Tablet-PCs.

Siehe auch