[Marble-devel] Review Request: Add support for TileMapServer storageLayout in DGML files

Javier Becerra Elcinto javier at auva.es
Wed Feb 22 10:20:12 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/104042/
-----------------------------------------------------------

(Updated Feb. 22, 2012, 10:20 a.m.)


Review request for Marble.


Description
-------

Add support for TileMapServer storageLayout in DGML files (similar to OpenStreetMap mode, but y coordinates start at the bottom of the map rather than at the top).

Add support for TileMapServer storageLayout in DGML files (similar to
OpenStreetMap mode, but y coordinates start at the bottom of the map
rather than at the top).
Changes include a new TmsServerLayout class to transfom the y coordinate
and modifications in  GeoSceneTexture::relativeTileFileName to take into
account the new TmsServerLayout (tiles are stored locally with the same
filename as it would have in the remote server, allowing the use of
locally stored maps without changing the filenames).
As a side note, running marble --tile-id will show the original marble
coordinates (y starting at top), not the TMS ones, which can be
confusing. Moreover, we can mix two textures with different
modes (i.e. OpenStreetMap and TileMapService), and only one tile-id per
tile will be shown.


Diffs
-----

  src/lib/ServerLayout.h 04c244f 
  src/lib/ServerLayout.cpp deb9d66 
  src/lib/geodata/handlers/dgml/DgmlStorageLayoutTagHandler.cpp 7619175 
  src/lib/geodata/scene/GeoSceneTexture.h 7a3fd00 
  src/lib/geodata/scene/GeoSceneTexture.cpp 3201820 

Diff: http://git.reviewboard.kde.org/r/104042/diff/


Testing
-------

1) Create a tileset using gdal2tiles.py (available in gdal-python)
     gdal2tiles.py -p mercator -z 0 13 yourgeotiff.tiff
2) Copy the generated tiles directory tree (i.e. the folders named 0 to 13) to Marble's local directory as a new map earth theme (in linux you would move them to ~/.local/share/marble/maps/earth/mynewtheme). Remember that you must have a level 0 transparent tile, no m
3) Modify an existing dgml (from Marble's system path, /usr/local/share/marble/data/maps/earth/...) file or create a new one which includes the following texture layer within the first layer of the map (<layer backend="texture"...>) (modify parameters to suit your files, and don't forget to check that the maximum zoom level is enough to view you geotiff file at a proper scale-if it is not enough then go back to first step and change the 13 (maximum zoom level) by the level of your choice)
    <texture name="yourname">
     <sourcedir format="png">earth/mynewtheme</sourcedir>
     <tileSize width="256" height="256"/>
     <storageLayout mode="TileMapService" levelZeroRows="1" levelZeroColumns="1" maximumTileLevel="13"/>
     <projection name="Mercator"/>
     <blending name="AlphaBlending"/>
    </texture>
     
4) Open Marble, select your modified theme and check that your geotiff file is overlaid at the right place.


Screenshots
-----------

File erdas_spnad83.tif overlaid on OpenStreetMap using Marble (downloaded from http://dl.maptools.org/dl/geotiff/samples/other/)
  http://git.reviewboard.kde.org/r/104042/s/439/


Thanks,

Javier Becerra Elcinto

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/marble-devel/attachments/20120222/71b3580c/attachment.html>


More information about the Marble-devel mailing list