ArcBruTile and MapTiler

MapTiler is a tool that generates tiles from georeferenced images.  Those tiles can be viewed in ArcMap using ArcBruTile (or with any decent TMS client).
This document describes the process to get from image to viewing in ArcMap. It's a 4 step process: Get data, generate tiles, configure ArcBruTile and view the tiles in ArcMap.

Note 1: This description just contains a basic sample. The whole process can be more complicated in some cases and in-depth knowledge of image formats, projections and TMS services is needed. Contact us if you run in such a case.

Note 2: In this example upcoming ArcBruTile 0.3 and MapTiler 1.0 beta 2 is used.

1] Get data
First we need some data to serve. In this example we download a georeferenced image from the Shaded Relief website.

Site: http://www.shadedrelief.com/world_relief/download.html

Take as a start an image thats not very big, for example Hypsography + Shaded relief + Oceans + Antarctic Ice Shelves (39.3 MB)

The download is a zip file containing the files 'HYP_50M_SR_W.tfw', 'HYP_50M_SR_W.tif' and 'Read_me.txt'.

The world file (tfw) is an important file, it contains the coordinates of the image. If you use your own image, make sure to have a world file for the image.

The spatial reference of the image is specified in the Read_me.txt file: WGS84

If we open the image in a picture viewer, we see a nice map:

image

 

2] Generate tiles
With MapTiler GUI application we can now generate tiles. The MapTile GUI application can be downloaded here <a href="http://help.maptiler.org/betatest/">http://help.maptiler.org/betatest/</a>.
At the moment (January 2011), the latest release is 1.0 beta2.

Start the MapTiler tool. In the first screen, select option 'WGS84', because the sample image has this spatial reference.  

image

In the next screen, add the image.

image

Select 'WGS84'
 

image
 

image

image

In the next screen, uncheck OpenLayers and GoogleEarth.

image

 

image


And press 'Render' and wait a bit.

Now copy the generated tileset to your webserver of choice (IIS, Apache or others) to a directory 'ShadedRelief'.

Open the 'TileMapResource.xml' file in this directory and edit the contents:

It should look like this as generated:

<?xml version="1.0" encoding="utf-8"?>
    <TileMap version="1.0.0" tilemapservice="http://tms.osgeo.org/1.0.0">
      <Title>HYP_50M_SR_W.tif</Title>
      <Abstract></Abstract>
      <SRS>EPSG:4326</SRS>
      <BoundingBox minx="-89.99999999998201" miny="-179.99999999999997" maxx="90.00000000000000" maxy="179.99999999996405"/>
      <Origin x="-89.99999999998201" y="-179.99999999999997"/>
      <TileFormat width="256" height="256" mime-type="image/png" extension="png"/>
      <TileSets profile="geodetic">
        <TileSet href="0" units-per-pixel="0.70312500000000" order="0"/>
        <TileSet href="1" units-per-pixel="0.35156250000000" order="1"/>
        <TileSet href="2" units-per-pixel="0.17578125000000" order="2"/>
        <TileSet href="3" units-per-pixel="0.08789062500000" order="3"/>
        <TileSet href="4" units-per-pixel="0.04394531250000" order="4"/>
      </TileSets>
    </TileMap>
    
 

Open and edit the file, change the tilemapservice url, the bounding box, origin and tileset hrefs until it looks like this::

<?xml version="1.0" encoding="utf-8"?>
    <TileMap version="1.0.0" tilemapservice="http://localhost/ShadedRelief">
      <Title>HYP_50M_SR_W.tif</Title>
      <Abstract></Abstract>
      <SRS>EPSG:4326</SRS>
      <BoundingBox minx="-180" miny="-90" maxx="180" maxy="-90"/>
      <Origin x="-180" y="-90"/>
      <TileFormat width="256" height="256" mime-type="image/png" extension="png"/>
      <TileSets profile="geodetic">
        <TileSet href="http://localhost/ShadedRelief/0" units-per-pixel="0.70312500000000" order="0"/>
        <TileSet href="http://localhost/ShadedRelief/1" units-per-pixel="0.35156250000000" order="1"/>
        <TileSet href="http://localhost/ShadedRelief/2" units-per-pixel="0.17578125000000" order="2"/>
        <TileSet href="http://localhost/ShadedRelief/3" units-per-pixel="0.08789062500000" order="3"/>
        <TileSet href="http://localhost/ShadedRelief/4" units-per-pixel="0.04394531250000" order="4"/>
      </TileSets>
    </TileMap>
 

Now create a new XML file on the webserver with a pointer to the 'TileMapResource.xml' file. For example name="service.xml"
It contains the following:

<?xml version="1.0" encoding="UTF-8" ?>
<TileMapService version="1.0.0">
<TileMaps>
   <TileMap href="http://localhost/ShadedRelief/tilemapresource.xml" srs="EPSG:4326" title="ShadedRelief" profile="global-geodetic" overwriteurls="false"/>
</TileMaps>
</TileMapService>

Note: This file can contain references to multiple tilemaps you've generated. Just add more TileMap elements to this file.

3] Configure ArcBruTile

Start ArcMap and press ArcBruTile -> Add service.

image

 

Press 'Add provider' and type Name="ShadedRelief" and Url="http://localhost/services.xml" in the first two boxes and press 'Add Provider':

image

4] View in ArcMap

Now ArcBruTile is configured correctly. Select the 'ShadedRelief' service and press 'Add selected service':

image

And the map is displayed in ArcMap as a TMS service:

image


If you have problems with viewing the tiles in ArcMap the best place to start is the ArcBruTile log file in

userprofile\Local Settings\Application Data\ArcBruTile .

Last edited Jan 3, 2011 at 2:40 PM by bertt, version 7

Comments

badmonkeyemail Aug 25, 2011 at 3:00 AM 
I do What you said. But the tiles have random white side in ArcMap. Why?