The ArcPad Team Blog

Unofficial stuff from the team behind the World's leading mobile GIS platform

Thursday, July 01, 2010

Basemap Image Tiles for ArcPad 10


You can create a basemap for ArcPad 10 from any ArcGIS map by using image tiles.
This post explains how to do this in 5 steps:
  1. Preparing your map in ArcMap.

  2. Publishing your map to ArcGIS Server.

  3. Creating image tiles for your map.

  4. Subscribing to your map in ArcPad 10.

  5. Copying your image tiles to ArcPad.

Step 1: Preparing your map in ArcMap
Your map must be in ArcGIS Online Web Mercator projection (WGS_1984_Web_Mercator_Auxilary_Sphere). This is because ArcPad 10 currently assumes data is coming from an ArcGIS Online Web Mercator service. Open your data in ArcMap and open the Data Frame properties. You will fine Web Mercator under Predefined > Projected Coordinate Systems > World > WGS 1984 Web Mercator (Auxiliary Sphere).



Step 2: Publishing your map to ArcGIS Server
I'll assume that you have installed ArcGIS Server and have some familiarity in publishing maps. For our purposes, there's nothing special in this step, use your favour technique to publish your map with ArcGIS Server, i.e. either from within Catalog or through the ArcGIS Server Manager.



Step 3: Creating image tiles for your map
You'll need to create ArcGIS Online compatible map tiles for your service in Exploded storage format. This can be achieved through the following steps.
  1. Use Catalog to manage your ArcGIS Server

  2. Right click on your service and select Service Properties

  3. Click Caching tab

  4. Click Using tiles from cache that you will define below

  5. Click on "Load tiling scheme from ..." and select "ArcGIS Online / Bing Maps / Google Maps"

  6. Scales from "1:591,657,527.591555" down to "1:1,128.497176" will be prefilled for you.

  7. For now, delete every scale except for the top 3, i.e. keep "1:591,657,527.591555", "1:295,828,763.795777" and "1:147,914,381.897889" (so that we can create the tiles and test them in ArcPad).

  8. Change the Storage Format from "Compact" to "Exploded".

  9. Click on "Create Tiles..." button and follow the wizard.

  10. Verify that the tiles are created by opening File Explorer on your ArcGIS Server machine and checking the C:\arcgisserver\arcgiscache\(yourmapservice)\Layers\_allLayers folder and you should see subfolders "L00", "L01", "L02" each containing some image tiles.

Step 4: Subscribing to your map in ArcPad 10

  1. Start ArcPad 10.

  2. Select "Add Data from Server..."

  3. Ensure the Service Type is "ArcGIS Online Service"

  4. Enter the URL of your website, i.e. http://yourwebsite.com

  5. Click on the Refresh services button

  6. Select your map's service

  7. Click Ok

  8. You'll be prompted to save the (yourmapservice).nmf file (Note where your saving this to)

  9. At this stage, some map tiles may begin to download from ArcGIS Server to ArcPad

Step 5: Copying your image tiles to ArcPad

Recall in Step 3 we created the image tiles and verified where they were in ArcGIS Server. The ArcGIS Server tiles are in the same tile cache format that ArcPad uses so you can bulk copy the tiles so that you'll always have an offline copy of the tiles in ArcPad.

  1. Open File Explorer

  2. Navigate to the folder where you saved your (yourmapservice).nmf file

  3. Show Hidden Folders (In Windows 7, Organize > Folder and Search options > View > Show hidden files, folders and drives).

  4. Open the hidden service folder for your map service

  5. Note the directory structure looks like (yourmapservice)\Layers\_allLayers

  6. Copy the directory from your ArcGIS Server machine's C:\arcgisserver\arcgiscache\(yourmapservice)\Layers\_allLayers folder

And that's it, now you have a complete offline copy of the tile caches. Now that you're happy, you can create more scales by repeating Step 3, 4 and 5 but keeping more than the top 3 scales. (You'll need to click on Delete Cache in your Map Service properties before you're allowed to recreate it with more scales).

When you're happy with the tiles, you can deploy this to your device. You should deploy both the (yourmapservice).nmf file and the entire (yourmapservice) folder tree. If you don't deploy the (yourmapservice) folder tree you'll need to have a data connection on your device so you can download the tiles on the fly.

9 Comments:

  • At Thursday, August 19, 2010 4:36:00 am, Blogger Cobe said…

    Hi!
    Thanks for these instructions - exactly what we've been looking for for a long time. We've run into some problems on the last step, though.

    We are using a local machine with ArcPad installed to test the tiled base maps. We've created the service in the required projection, created the tiles, tried adding the nmf as an arcgis online service, copied the tiles to a directory on the local machine, but our arcpad doc just shows the loading sign and never displays data. It also did this after subscribing to the service.
    So it seems like something is wrong with our map.

    We can load it as a service in ArcMap and we can see the map tiles no prob.

     
  • At Tuesday, November 02, 2010 7:34:00 pm, Blogger  said…

    HI
    I use arcgis server 9.3.1 to create map tiles for arcpad 10.
    but I can't see map in arcpad.
    should I use arcgis server 10?

     
  • At Tuesday, November 02, 2010 7:37:00 pm, Blogger  said…

    HI,
    I follow the step to create Basemap Image Tiles for ArcPad 10.
    but I can't see map in arcpad 10.
    My ArcGIS desktop and ArcGIS Server verson is 9.3.1.Should I Update to ArcGIS 10 for this?

     
  • At Friday, March 04, 2011 2:48:00 pm, Blogger Stephen Quan said…

    The common traps encountered are:

    (1) The map wasn't in Web Mercator.
    (2) The ArcGIS Online / Bing Maps / Google Maps tiling scheme wasn't used (i.e. Step 5)
    (3) The top levels were not kept (i.e. Step 7)
    (4) Storage Format wasn't set to Exploded (i.e. Step 8)

    Missing some of these steps can cause a forever spinning icon in ArcPad 10's ArcGIS Online extension.

     
  • At Tuesday, March 08, 2011 5:35:00 am, Blogger Hose said…

    Hi, I followed these steps and was successfully able to view my cached imagery offline using ArcPad 10 and a Trimble Nomad. However, whenever I insert a .nmf file into my map I get a "HTTP error 12007". I believe it's trying to call back to the map service and kicks back this error whenever the unit is not connected to the internet. I hit "ok" for this error and the cached aerials load (saved on SD card). Is there any way I can prevent the .nmf file from automatically looking to the on-line map service all together? I have 3 cached aerial .nmf files in my map and an error message pops up for each cached service whenever I open up the saved ArcPad map.

    Thanks

     
  • At Tuesday, March 08, 2011 9:31:00 am, Blogger Stephen Quan said…

    Two things you can do to force the NMF file to stay offline:

    (1) Ensure you have top level tiles fully downloaded, i.e. L01, L02, L03.

    (2) Hack the Url in the NMF file so that it no longer points to the online service, i.e. it has no chance of going online. i.e. try http://127.0.0.1/

     
  • At Saturday, March 12, 2011 4:04:00 am, Blogger Joe said…

    Thank you for your suggestions. I definitely have all the top level tiles loaded. I tried your 2nd suggestion and when I use 'http://127.0.0.1/' I still get a pop-up that says "Encountered HTTP error 12029 for http://127.0.0.1//mymapservice/MapServer. When I delete the URL all together, so it only reads 'http://', I don't get a pop-up error on my ArcPad desktop environment, but still get the error in ArcPad on my GPS unit. Very weird. Any other suggestions?

     
  • At Wednesday, January 14, 2015 7:17:00 pm, Blogger Ahmad SALEH said…

    Hello I am having the same error but when i hacked the Url to http:// the massage gone but I cant see the service

     
  • At Thursday, January 15, 2015 8:58:00 am, Blogger Marika said…

    There are improvements and fixes for using basemaps coming in ArcPad 10.2.2 to be released in just a few days!

     

Post a Comment

<< Home