ES:Representación

Este artículo es una traducción incompleta de Rendering: puede tener carencias, errores no corregidos o partes que todavía no han sido traducidas.
Si comprendes el artículo original en inglés, por favor, ayuda a completar esta traducción al español. Lee las instrucciones sobre cómo traducir este wiki.
Parece que nadie está trabajando en la traducción en este momento. Anímate y colabora en la tarea de traducción.

The process of rendering a map generally means taking raw geospatial data and making a visual map from it. Often the word applies more specifically to the production of a raster image, or a set of raster tiles, but it can refer to the production of map outputs in vector-based formats. "3D rendering" is also possible taking map data as an input. The ability to render maps in new and interesting styles, or highlighting features of special interest, is one of the most exciting aspects having open access to geodata. Developers in and around the OpenStreetMap community have created a wide variety of software for rendering OpenStreetMap data. The data can also be converted to other data formats for use with existing rendering software.

Rendering on OpenStreetMap servers

The most obvious examples of rendering OpenStreetMap data, are those found on the openstreetmap.org homepage. Click the layer picker button on the right to switch between layers showing different rendering styles. There are several layers created using Mapnik software including the default 'Standard' layer. To understand more about the infrastructure involved in rendering and serving these tiles' map styles, see Component overview and Mapnik Rendering.

There are limitless dimensions of flexibility involved in rendering. Most rendering software supports some kind of stylesheet for controlling things like colour, line widths, text orientation, icons for points of interest, and many very subtle visual factors.

Server and command line tools

NameTarget platformsTarget languagesLicenseNotes
AlaCarteWindows, LinuxN/AAGPL
KartographCross-platformPythonAGPLPython framework to create SVG maps
KothicCross-platformPython?a MapCSS/0.2 python rendering engine.
LunaRenderWindowsLuaMITXML2SVG renderer
MapnikWindows, macOS, LinuxC++, JavaScript, Python, Ruby, JavaLGPLThe most popular server-side 2D map renderer. Requires PostgreSQL and various C++ libraries. Designed to be fast and is suitable for tile generation on high-end servers but it isn't particularly easy to set up.
MapOSMaticCross-platformPythonAGPLv3Can render maps with a grid and street index. Written in Python/Django + mapnik.
MapSurfer.NETWindows, LinuxC#ProprietaryFramework for map styling and publishing (rendering, caching) geospatial data to the Web.
node-mapbox-gl-nativeNode.jsJavaScriptBSDNode.js package for rendering Mapbox Vector Tiles using OpenGL
osmCacheJava EEJavaProprietaryA Java EE servlet to control rendering and rerendering of tiles with Mapnik.
SmrenderCross-platformCGPLv3a rules-based rendering engine written in C
TileServer GLCross-platformBSDTile server for raster and vector tiles.
TileSweep?C, JSX?Tile server with prerendering using libmapnik.

Client-side GUI applications

NameTarget platformsLicenseNotes
Hardware accelerated real-time rendering.NetProprietaryusing graphics card to render images in real-time, instead of displaying prerendered tiles
Kendzi3dJava SEBSDPlugin for JOSM, allows viewing of edited data in 3D
KosmtikNode.jsWTFPLCartoCSS style development tool (style preview) based on Mapnik.
MaperitiveWindows, macOS, LinuxProprietarylocal file (.osm, .osm.bz2 and GPX) desktop rendering application, with rendering rules defined in a text file. Generates BMP, PNG and SVG output. Not designed for high performance rendering or huge volumes of data, but easy to set up and flexible, and a good option for one-off rendering (e.g. a map of your city). It also has a tile generator, hillshading, elevation colouring and lots of other features.
OSM2WorldJava SELGPLTool that creates 3D models from OSM data files
TileMill Windows, macOS, Linux 3-clause BSD CartoCSS editor and development tool based on Mapnik.
TopoMapCreatorWindowsGPLv2Desktop application based on Mapnik. It creates automatically topographic maps from OSM, NASA and ESA data. Select a map extent (by dragging over a world map), click on the start button and wait for the GeoTIFF, ECW, GALILEO, ORUXMAPS or NAVIMAP output.
XNavigatorJava SEGPLv2OSM in 3D

Client-side libraries

Artículo principal: Frameworks
NameTarget platformsTarget languagesLicenseNotes
CartagenWebJavaScriptMITHTML5 Canvas/JavaScript-based renderer
Carto Mobile SDKAndroid, iOS, Windows PhoneJava, Objective-C++, Swift, C#BSDSupports 3D city overlays, editable vector overlays and is highly customizable.
CartoTypeWindows, iOS, Android, macOS, UnixC++ProprietaryRendering and routing library
GLMapiOS, AndroidObjective-C, Swift, JavaProprietaryOffline or online vector map rendered on device using OpenGL ES
HalcyonFlashActionScriptWTFPLRendering library developed by Richard Fairhurst and used within Potlatch 2
KartographWebJavaScriptLGPLJavaScript library to display vector generated maps in any browser
Kothic JSWebJavaScriptBSDFull-featured JavaScript map rendering engine using HTML5 Canvas. It was initially developed as a JavaScript port of Kothic.
libosmscoutLinux, macOS, iOS, Windows, Android, QtC++, JavaLGPLOffers simple, high-level interfaces to offline rendering and routing functionalities based on OpenStreetMap data.
Mapbox Android SDKAndroidJavaBSDDisplays Mapbox Vector Tiles in a slippy map using OpenGL ES
Mapbox GL JSWebJavaScriptBSDDisplays Mapbox Vector Tiles in a slippy map using WebGL
Mapbox iOS SDKiOSObjective-C, Swift, Interface BuilderBSDDisplays Mapbox Vector Tiles in a slippy map using OpenGL ES
Mapbox macOS SDKmacOSObjective-C, Swift, Interface Builder, AppleScriptBSDDisplays Mapbox Vector Tiles in a slippy map using OpenGL
Mapbox Qt SDKQtC++BSDDisplays Mapbox Vector Tiles in a slippy map using OpenGL
Mapbox Unity SDKCross-platformC#ApacheProvides data for generating custom 3D scenes in Unity
MapsforgeAndroid, Java MEJavaLGPLv3free and open toolbox that enables the community to easily create new OpenStreetMap-based applications. Provided tools and APIs include solutions for map rendering, route planning and navigation, POI indexing and search, map overlays and more.
osm2x3dWebJavaScriptLGPLv3OSM 3D converter using native WebGL rendering (x3dom JS library)
TangramWebJavaScriptMIT2D and 3D map renderer using WebGL
Tangram ESAndroid, iOS, Linux, macOSC++MIT2D and 3D map renderer using OpenGL ES

Historical

The following renderers are no longer maintained but are of historical interest:

  • Kosmos – local file (.osm) rendering engine based on GDI/.NET (Windows), with rendering rules defined on a wiki page. Not designed for high performance rendering or huge volumes of data, but very flexible, and good option for one-off rendering. Superseded by Maperitive
  • 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 for creating isometric maps from OSM data
  • Osmarender - XSLTs which does OSM XML to SVG transformation. tiles@home was a project which uses Osmarender to create a tile set for serving a map layer alongside Mapnik's, but Osmarender can also be a good option for doing one-off renderings. SVG format allows you to do post-processing tidy up tweaks (see other options below). It was withdrawn from the main map at osm.org on 1th March 2012.
  • osmbrowser – can load large areas of OSM data and render them in vector graphics.
  • osmrender.pl - simple maps easily drawn with a Perl program. Uses *.osm as input.
  • Pyrender – a collection of ideas, and some code in Python for various rendering server steps
  • TileMill is a frontend solution to handle a user defined rendering of Mapnik. Uses the simpler CartoCSS language instead of Mapnik XML.
  • VTM – cross-platform vector tile renderer developed by the OpenScienceMap project

See also

This article is issued from Openstreetmap. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.