GISMentors Blog

MapBox podkladové mapy v QGIS

MabBox je populární služba a platforma pro publikaci prostorových dat. Nepotřebujete server, nepotřebujete podkladovou mapu – prostě si použijete jeden z dostupných podkladů založených buď na datech OpenStreetMap nebo volně dostupných satelitních datech, nahrajete svůj GeoJSON nebo KML soubor a máte mapu, kterou můžete nasdílet světu (postavené je to na Leafletu). Jejich platební politika je pravda asi trochu dražší, ale základ zadarmo je celkem použitelný. Řešil jsem ale problém, jak zobrazit některé podkladové mapy z MapBox např. v QGIS. Na StackOverflow jsem našel zajímavý postup: Nadefinuje se soubor XML, který definuje službu Tile Map Service (TMS) pro GDAL. Například:  <GDAL_WMS> <Service name=”TMS”> <ServerUrl>https://api.tiles.mapbox.com/v4/mapbox.streets-satellite/${z}/${x}/${y}.png</ServerUrl> </Service> <DataWindow> <UpperLeftX>-20037508.34</UpperLeftX> <UpperLeftY>20037508.34</UpperLeftY> <LowerRightX>20037508.34</LowerRightX> <LowerRightY>-20037508.34</LowerRightY> <TileLevel>18</TileLevel> <TileCountX>1</TileCountX> <TileCountY>1</TileCountY> <YOrigin>top</YOrigin> </DataWindow> <Projection>EPSG:3857</Projection> <BlockSizeX>256</BlockSizeX> <BlockSizeY>256</BlockSizeY> <BandsCount>3</BandsCount> <Cache /> </GDAL_WMS> Na tomto souboru pak můžete pustit např. gdalinfo Driver: WMS/OGC Web Map Service Files: mapbox.xml Size is 67108864, 67108864 Coordinate System is: PROJCS[“WGS 84 / Pseudo-Mercator”, GEOGCS[“WGS 84”, DATUM[“WGS_1984”, SPHEROID[“WGS 84”,6378137,298.257223563, AUTHORITY[“EPSG”,”7030″]], AUTHORITY[“EPSG”,”6326″]], PRIMEM[“Greenwich”,0, AUTHORITY[“EPSG”,”8901″]], UNIT[“degree”,0.0174532925199433, AUTHORITY[“EPSG”,”9122″]], AUTHORITY[“EPSG”,”4326″]], PROJECTION[“Mercator_1SP”], PARAMETER[“central_meridian”,0], PARAMETER[“scale_factor”,1], PARAMETER[“false_easting”,0], PARAMETER[“false_northing”,0], UNIT[“metre”,1, AUTHORITY[“EPSG”,”9001″]], AXIS[“X”,EAST], AXIS[“Y”,NORTH], EXTENSION[“PROJ4″,”+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs”], AUTHORITY[“EPSG”,”3857″]] Origin = (-20037508.339999999850988,20037508.339999999850988) Pixel Size = (0.597164283394814,-0.597164283394814) Image Structure Metadata: INTERLEAVE=PIXEL Corner Coordinates: Upper Left (-20037508.340,20037508.340) (180d 0′ 0.00″W, […]

Přejít na článek »

Mapa zastoupení dřevin po ORP (2. díl)

Generujeme SVG z PostGISu Komu se nelení, tomu se jasaní Vyrobíme si mapku zastoupení jasanů. První díl věnovaný získání dat a nahrání dat do PostGISu. Co vrací ST_AsSVG Takže, co tedy vrací? SELECT ST_AsSVG(generalizovanehranice) FROM hratky_se_svg.orpecka LIMIT 1; Ale to nevypadá jako XML! Ano, jistě. Není to totiž celé SVG, pouze zápis vektorových geometrií jednotlivých prvků. Je to kvůli tomu, že budeme chtít prvkům určovat jejich grafickou reprezentaci. Tloušťku čar, barvu a tak dále. Element path Použijeme XML funkce PostGISu k sestavení kompletního elementu path. SET SEARCH_PATH = hratky_se_svg, public; SELECT XMLELEMENT(NAME path, XMLATTRIBUTES( ST_AsSVG(generalizovanehranice, 0, 1) AS d , ‘black’ AS stroke , 50 AS “stroke-width” , ‘none’ AS fill ) ) svg_path from orpecka; Tady se nám již vrací XML elementy. Co jsem to právě povedl? Funkce XMLELEMENT vyrobí, jak již název napovídá XML element. Pomocí funkce XMLATTRIBUTES tento element naplníme atributy. První atribut pojmenujeme d a naplníme ho výstupem z funkce ST_AsSVG. Všimněte si druhého a třetího parametru funkce ST_AsSVG. Druhý parametr rozlišuje, jestli mají být souřadnice lomových bodů v absolutních hodnotách nebo relativně k prvku. Nula značí absolutně, jednička relativně. Druhý je počet desetinných míst. Jednička znamená jedno desetinné místo. Přesnost na deset centimetrů je u […]

Přejít na článek »

Posts navigation