[Talk-cz] Rastr (hillshade) v pgsql a Mapnik

Petr Vejsada osm na propsychology.cz
Úterý Únor 11 00:11:43 UTC 2014


Zdravím,

Dne Po 10. února 2014 13:30:57, Jachym Cepicky napsal(a):

> Jestli se nepletu, tak Paul Ramsay důrazně nedopurčoval, dávat do PostGISu
> rastry. To že něco jde ještě neznamená, že je to dobrej nápad. Zkuste to
> vyexportit to geotiffu a přistupovat k tomu z gdalu "normálně"

no já to právě v geotiffu teď mám a chtěl jsem do Postgisu, protože se snáze 
přidávají a ubírají územní části. Asi mi nezbude než to tak nechat. Pravda, 
Postgis je o něco pomalejší.

Už jsem přišel na to, proč ta chyba, ovšem nevím řešení. Je to proto, protože 
z Pythonu je cesta k osm.xml relativní (je v ./) a tak ta definice souboru, kde 
je DB zdroj, zůstane nedotčena, kdežto při při volání z mod_tile je cesta 
absolutní a pak z toho vznikne to /home/mapnik/.../PG:

OK, tak alespoň mám důvod se přestat snažit.

> 
> J
> 
> On Thu, Feb 06, 2014 at 12:26:43AM +0100, Petr Vejsada wrote:
> > Ahoj,
> > 
> > už delší dobu se nemohu hnout z místa, tak se zeptám. Chtěl bych mít v
> > databázi rastrovou vrstvu pro reliéy/stínování a to pak zobrazovat
> > Mapnikem.
> > 
> > Mapnik přímo to v aktuální stabilní verzi (asi) nepodporuje, ale umí to
> > GDAL a Mapnik zase umí GDAL.
> > 
> > Zkusil jsem Mapniku podstrčit jako zdroj dat GDAL, jen jsem si 'trochu'
> > 
> > poupravil název souboru. Konfigurace vypadá takto:
> >   <Datasource>
> >   
> >     <Parameter name="type">gdal</Parameter>
> >     <Parameter name="file">PG:dbname=pedro port=5432 schema=gis
> > 
> > table=cz_hillshade mode=2</Parameter>
> > 
> >     <Parameter name="format">tiff</Parameter>
> >   
> >   </Datasource>
> > 
> > Když zavolám Mapnik z Pythonu, použiji skripty na generování dlaždic nebo
> > obrázku generate_tiles.py nebo generate_image.py, tak vše funguje podle
> > mých představ. Data bere z postgresql a vykreslí, co chci. GDAL to, co je
> > v parametru <file> vezme jako datasource z databáze a vše je OK.
> > 
> > Pokud to chci dát do produkčního režimu, tedy přes Tirex a mod_tile, už se
> > to nezdaří. Do syslogu dostanu hlášku:
> > 
> > Feb  5 21:08:52 propsy tirex-backend-mapnik[10981]: Renderer started
> > (name=mapnik)
> > Feb  5 21:08:57 propsy tirex-backend-mapnik[10981]: cannot add
> > /etc/tirex/renderer/mapnik/hill.conf
> > Feb  5 21:08:57 propsy tirex-backend-mapnik[10981]:
> > `/home/mapnik/layers/hill/PG:dbname=pedro port=54
> > 32 schema=gis table=cz_hillshade mode=2' does not exist in the file
> > system, and is not recognised as
> > a supported dataset name.   encountered during parsing of layer
> > 'hillshade' in Layer at line 5 of '/h
> > ome/mapnik/layers/hill/osm.xml'
> > 
> > Nemohl jsem přijít na to, co vlastně tu hlášku "file ... does not exist in
> > the file system, and is not recognised as a supported dataset name"
> > způsobuje. Pak jsem vygrepoval, že je to GDAL.
> > 
> > Otázkou je, proč GDAL při volání Mapniku z Pythonu ten parametr v pohodě
> > vezme jako DB resource, kdežto při volání z Tirexu tvrdošíjně hledá
> > soubor toho názvu, co je v parametru <file>.
> > 
> > Tirex asi volá Mapnik jiným způsobem, nebo že by sám parsoval konfiguraci
> > Mapniku a testnul si GDAL, jestli bude s takovým souborem spokojený?
> > 
> > Nesetkal jste se s tímto někdo?
> > 
> > --
> > Petr, pv na propsychology.cz
> > 
> > >p<
> > 
> > _______________________________________________
> > Talk-cz mailing list
> > Talk-cz na openstreetmap.org
> > https://lists.openstreetmap.org/listinfo/talk-cz




Další informace o konferenci talk-cz