Pt:Camada de tile padrão
Camada padrão de renderização OpenStreetMap Carto,osm-carto | |
---|---|
Baclaran, Paranaque and Pasay Rotunda, Pasay | |
Autor: | Andy Allan e outros contribuidores |
Slippy map: | www |
Usage policy: | operations |
Tiles license: | CC-BY-SA 2.0 |
Style website: | gravitystorm/openstreetmap-carto |
Style license: | CC0 1.0 |
Versão: | 4.20 releases (2019-02-15) |
A Camada de renderização padrão é a tile layer padrão em inicial do OpenStreetMap. É frequentemente referido pelo nome da folha de estilo "OpenStreetMap Carto"[1] (ou osm-carto para abreviar).
Relatórios de bugs (por exemplo, problemas de renderização de classes de objetos específicos) podem ser gerados there (needs a login with a GitHub account).
Desenvolvimento de servidores do OSM
Os servidores do OSM usam o estilo do OpenStreetMap Carto desde agosto de 2013. Estatísticas OSM tileserver de geração disponíveis, e você pode ler mais sobre isso em processo de renderização de quadros.
Os ladrilhos de zoom baixo e médio (z0-z12) geralmente são re-renderizados somente quando uma nova versão do OSM Carto está sendo implantada e no primeiro domingo de cada mês [2].As mudanças no esquema do banco de dados não devem ser solicitadas com mais freqüência do que 1-2 vezes por ano (provavelmente combinadas com a versão mais recente PostgreSQL). Se estiver usando a camada Padrão dos servidores de tiles openstreetmap.org em outros aplicativos, você deve seguir a Política de uso de camadas.
Chave do mapa
Como esse estilo é rico em recursos, a chave curta do mapa incluída na página inicial do OSM.org é muito limitada. Veja Standard tile layer/Key e suas subpáginas para a versão de legenda mais completa e atualizada:
- Artigo principal: SymbolsTab
- Artigo principal: LinesTab
- Artigo principal: AreasTab
Grandes mudanças
- 2012 - Importando a versão XML para o CartoCSS (início do OSM Carto)
- 2013 - Implantação de servidores de tiles OSM
- 2014 - Reescrito o código dos edifícios
- 2015 - Mudança de estilo de estrada, ícones SVG
- 2016 - Melhor renderização de placenames
- 2017 - Cor da água, melhorias no zoom médio, alteração do esquema do banco de dados
- 2018 - Processamento de tags de escritório e assistência médica, novas categorias de cores de POI
Detalhes técnicos
Design
O estilo é projetado como um mapa de propósito geral do mundo, por exemplo:
- objetos especiais (como marcas de mar ou detalhes ferroviários) não serão renderizados
- os rótulos são renderizados com um valor name=* (o que ele contém para um determinado objeto), por isso não está exibindo nomes em inglês em todo o mundo
- não há símbolos específicos do país (como por exemplo, escudos de estrada ou sinais de metrô), todos eles têm uma aparência uniforme
Enquanto o OpenStreetMap Carto tenta mostrar muitos objetos diferentes, não é possível renderizar tudo armazenado em um banco de dados, então a seleção de opt-in é feita.
Situações de uso para alguns níveis de zoom são definidos.
Mapnik e CartoCSS
Os blocos cartográficos do OpenStreetMap são renderizados usando o kit de ferramentas Mapnik. Dito isto, OpenStreetMap Carto e Mapnik não são a mesma coisa! O Mapnik é uma biblioteca de renderização de mapas usada para muitas folhas de estilo de mapas (incluindo o OpenStreetMap Carto).
O CartoCSS é usado para pré-processar a folha de estilo no formato XML do Mapnik (desde agosto de 2013).
Ordem de renderização
Esse estilo tem várias camadas. Por exemplo, os nomes dos cursos de água são processados por vias navegáveis, as lojas são renderizadas em edifícios, os túneis são executados em edifícios, as estradas são renderizadas sobre a cobertura da terra, etc.
A questão restante é como os objetos são renderizados dentro da camada. Para alguns casos, as colisões não são permitidas e os objetos que cobrem o objeto já renderizado de determinada camada não são renderizados. Isso é feito, por exemplo, para cidades, onde os rótulos para menor que colidiriam com o rótulo para um maior não são renderizados.
As áreas de cobertura de terra são ordenadas por área, com as menores mais tarde e as colisões são permitidas. Isso significa que, para uma determinada camada, áreas menores cobrirão maiores.
Por exemplo, pequena área de landuse=park será renderizada em landuse=residential.
Há também uma camada de sobreposição separada contendo, por exemplo, símbolos de árvore para a cobertura da floresta, que é renderizada sobre o preenchimento da cobertura de terra.
- área coberta por pequeno landuse=forest e grande landuse=residential
- o preenchimento de floresta será processado em preenchimento residencial e será coberto, e a sobreposição de floresta será renderizada posteriormente
- área coberta por grande landuse=forest e pequeno landuse=residential
- o preenchimento residencial será processado sobre o preenchimento da floresta e será coberto, depois será sobreposto
Database
O OpenStreetMap Carto usa como seu banco de dados padrão PostgreSQL com PostGIS extensão geoespacial e é chamado de "gis". É derivado do [[Database|OSM , mas não armazena o conjunto de dados completo - apenas os elementos relacionados à renderização estão disponíveis. Desde a v4.0.0, o OpenStreetMap Carto usa o PostgreSQL hstore (conteúdo do tipo de extensão) e isso é pré-processado por a lua script pela ferramenta osm2pgsql.
Estrutura do código
A configuração geral do projeto está incluída no project.mml (YAML). Existem as chamadas "camadas", que incluem principalmente instruções SQL selecionando os objetos, enquanto o estilo real é feito em vários arquivos MSS.
O código de estradas é muito complexo e é parcialmente gerado pelos scripts auxiliares.
Ícones e padrões
Os ícones são imagens vetoriais alinhadas por pixel (SVG), geralmente baseadas em matriz de 14 px. Enquanto a maioria deles é monocromática e sua cor de renderização é definida nos arquivos MSS, alguns dos ícones têm mais de uma cor e são definidos no próprio arquivo de vetor nesses casos. Meios-tons podem ser usados.
Alguns padrões também são feitos como imagens vetoriais, mas se eles ainda são imagens rasterizadas (PNG), eles são derivados de elementos vetoriais e o processo é documentado, por isso, deve ser fácil migrar para um formato vetorial quando possível.
Fontes
A fonte Noto é usada, se possível, com DejaVu Sans, Hanazono e Unifont usados como fallbacks.
Fontes externas
O estilo depende em parte de alguns arquivos de dados externos provenientes de Natureza Terrestre e repositório de dados OSM pré-processados OpenStreetMapData. Eles podem ser atualizados com um script Python (scripts/get-shapefiles.py ou manualmente.
O litoral de renderização no openstreetmap.org é descrito aqui: Coastline#Rendering_in_Standard_tile_layer_on_openstreetmap.org.
Instalando e contribuindo
Você pode configurar uma cópia das folhas de estilo de renderização do CartStreet do OpenStreetMap para você mesmo. Para obter mais informações técnicas, incluindo instruções de configuração, consulte gravitystorm/openstreetmap-carto no GitHub:
- As diretrizes de contribuição estão documentadas aqui.
- Pode se definir um simples Ambiente baseado em Docker para testes.
- Somente tarefas fáceis foi selecionado para iniciar o processo.
Se você ainda não sabe por onde começar, basta pedir a ajuda (por exemplo, nos comentários do ticket).
Desenvolvedores mais experientes também são muito bem-vindos. Algumas tarefas complexas que precisam de atenção são:
Forks e implantações independentes
Além da implantação do OSM.org, o osm-carto está sendo usado para diferentes serviços independentes, como OSM Japan ou Geofabrik Maps.
O OpenStreetMap Carto é usado como base para outros forks de renderização de estilo de mapa, especialmente:
- German osm-carto style (também contém um branch com uma versão localizada do OpenStreetMap Carto)
- Estilo Francês do OSM-Carto
- Estilo britânico do OSM-Carto(AJT)
- Estilo suíço do OSM-Carto
- Estilo belga do OSM-Carto
- Japan fork of XML style (após OSM-Carto)
- Tiles vector do OSM-Carto
- Estilo para Hi-Res displays
- Estilo para Saara e outras regiões desérticas
- Estilo preto e branc0o
- Estilo para exibir e exportar dados de contorno
- Fork imagico para diversas ideias e testes cartográficos
- Mapa em vector OSM-Carto baseado na cartografia da ESRI
Há também um projeto separado chamado OpenGeofiction (OGF), que usa ferramentas OSM - incluindo osm-carto como estilo padrão - para criar mapas de lugares fictícios.
Links externos
Geral:
- Tópico no fórum do OSM
- Atividade atual do projeto
- OpenStreetMap Carto Tutoriais - Documentação não-oficial (por Ircama)
- Docker things for openstreetmap carto - independent Docker environment (por OnkelTem)
- Tutorial about how to render on a map road line surfaces (por Lukas Sommer)
- Pré-renderizados tiles em zoom baixo (por Paul Norman)
Histórico:
- Timelapse vídeos de mudanças no osm-carto 2012-2016 (by Michael Glanznig)
- Folhas de estilo Mapnik do formato XML antigo para o estilo "padrão" do OpenStreetMap
- Custom map style (1) - aprimorando o estilo padrão do OpenStreetmap para o antigo formato XML anterior a 2012 (por Volker Schatz)
Blogs:
- Complexidade do OpenStreetMap Carto (Blog do Paul Norman, 2015)
- OpenStreetMap-Carto – um olhar para o ano passado (Blog do Christoph Hormann, 2017)
- OpenStreetMap-Carto – um olhar para o futuro (Blog do Christoph Hormann, 2017)
- Adicionando mudança ao "OSM Carto" (Diário de Andy Townsend, 2017)
Debates:
- Andy Allan debate (em inglês): SoTM US 2013, SoTM EU 2014, SoTM US 2015
- Rory McCann talk on SoTM 2016 ("Convertendo um projeto carto comum em vetores vetoriais: estudo de caso carto-OSM")
- Paul Norman discute no SoTM 2017
Notas de Rodapé
|