Welcome to ESRI Blogs

How to build a cache with the same tile sizes and scales as ArcGIS Online

When building a map cache that will overlay ArcGIS Online in a .NET Web mapping application, you need to match the tile sizes and tiling origin to that used by ArcGIS Online. You also should make an effort to match as many scale levels as practical with the ArcGIS Online scale levels. To quickly load this information into the cache generation tool, you can use this cache configuration file for ArcGIS Online.

The illustration below shows how you can use the configuration file when generating a map cache.

Browse to the tiling scheme and the scales will fill in automatically 

The closest scale level available in ArcGIS Online is about 1:4,500. If the area you are caching is very large, this and some of the other close scale levels may not be practical for caching. You can remove the scale levels by manually editing the cache configuration file in an XML editor. Each scale level has an LODInfo tag. Remove the entire tag to remove the scale level, as shown in the example below:

Remove the LODInfo tag for each scale you want to delete 

-Sterling

Published Friday, July 20, 2007 12:10 PM by sterlingdq
Filed under: ,

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

What is the basis for the different scales? The numbers seem an odd choice, but I'm sure there's logic behind them, just dont know what:-)
Tuesday, July 24, 2007 1:01 PM by Niels

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

The precise numbers are used to avoid tile overlap at the edge of the globe. Also, these particular scales were chosen because they work well with the built-in scale levels that ArcGlobe and ArcGIS Explorer use. See this post for more details: http://blogs.esri.com/Dev/blogs/arcgisserver/archive/2007/05/30/Creating-a-3D-globe-cache-from-a-2D-map-cache.aspx

Monday, July 30, 2007 10:28 AM by sterlingdq

# Perfromace problem when the third service is added

There is a performance problem when a non-cached service is added. Here are 5 scenarios I am running:

Scene 1) I only have one cached map service in my web app and that's the local cached service. Peromance for map navigation(Pan) is less than 1-2 seconds

Scene 2) I only have ESRI On Line Service (Street Map). It takes 2-3 seconds for each map navigation (Pan)

Scene 3) I have only a non-cached map service coming from SDE-SQl, the navigation performance is 6-7 seconds.

Scene 4) I combined the ESRI and Local cache together, performance still very good (3-4 seconds)

Scene 5) I added the non-cached service, performance on navigation degrades significantly to 18-25 seconds. Worst is when I keep panning the cached map services can keep up but I think the non-cached map service just adds up to the pending tiles to the point that I can have several hundreds on pending tile reported on the status bar and I have to wait several minutes until it loads completely, if it ever does.

I appreciate any comments on this.

Monday, July 30, 2007 12:05 PM by hoomanmoh

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

When I try to load the XML, I get "Tiling Scheme spatial reference not the same as MXD spatial reference." How can I get a predefined scheme in my spatial reference?
Monday, August 06, 2007 3:02 PM by Brett B.

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

@Brett- All ArcGIS Online maps use the WGS 84 geographic coordinate system, so the data frame that you are caching must use this coordinate system in order to load the ArcGIS Online tiling scheme. I should have made that clearer in this post.

We anticipate caching ArcGIS Online services in additional coordinate systems in the future.

Monday, August 06, 2007 4:11 PM by sterlingdq

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

Ok, that works! What limits the number of server instances? I want to use 10 but it keeps defaulting back to 2 every time I move away from that box.
Tuesday, August 07, 2007 9:46 AM by Brett B.

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

If I remember correctly you have to first stop your service then change the number of instances in the service properties.  then start it back up and it should recognize the new number you put in.

Tuesday, August 07, 2007 11:05 AM by ajpfister06

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

The number of service instances you can use to create the cache is limited by the Maximum Number of Instances property on the map service you are trying to cache.

For example, suppose you are trying to cache a map service named Japan and you want to use the ArcGIS Online tiling scheme from this post. Before you start caching, go into Manager, click the Services tab and find the Japan service in the list. Then click the Edit (pencil) icon and choose Pooling from the left menu. This is where you can increase the maximum number of instances that will be created.

Keep in mind that 10 instances at a time is probably going to be too much to handle if you have ArcGIS Server running on just one machine. Somewhere between 2 - 4 concurrent instances is more reasonable for each SOC CPU you have devoted to caching.

Tuesday, August 07, 2007 11:08 AM by sterlingdq

# Designing a map to overlay ArcGIS Online in a Web application

In November 2006, ESRI announced the public beta release of ArcGIS Online, a set of base map and reference

Tuesday, August 07, 2007 2:42 PM by ArcGIS Server Development Blog

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

The Tiling Origin states that that the "extent of the source map docuemnt must be within" the tiling origin. How do I know that my source data is within the origin of X = -180 and Y = 90? Since it is optional can I leave it out?
Wednesday, March 19, 2008 10:27 AM by Carol Fackler

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

You should keep the tiling origin of X = -180 Y = 90. If you view a map of the world in WGS 1984 geographic coordinate system in ArcMap, this point is the upper-left corner of the world. Tiles will be created below and to the right of this point. Therefore the ArcGIS Online tiling origin encompasses any data that you can add to the map.

Thursday, March 20, 2008 9:08 AM by sterlingdq

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

Thanks for your replies Sterling. I'm really having a hard time getting my caches to generate successfully using data I have generated caches with before. I changed the LevelID so I start at 0 because I deleted the first group of scales. I start at 2308574.98883465. Should I change the LevelID or leave them the same even when eleminating LODs from the provided cache configuration file for ArcGIS Online? I have a ticket open (#628626) but all help from Redlands is appreciated. Thanks!
Monday, March 31, 2008 9:42 AM by Carol (facklec)

# re: How to build a cache with the same tile sizes and scales as ArcGIS Online

Carol-

Instead of editing the configuration file manually, you may try the following steps:

1. Load the ArcGIS Online tiling scheme (cache configuration file) into the Generate Map Server Cache tool.

2. Run the Generate Map Server Cache tool for a few seconds (just long enough to create the conf.xml file in the cache directory)

3. Cancel Generate Map Server Cache

4. Run Update Map Server Cache. This is a nice tool because it gives you a checkbox list of scales, so you can uncheck any scales that you don't want to create without affecting the tiling scheme and without manually editing the configuration file.

Tuesday, April 01, 2008 9:55 AM by sterlingdq

Leave a Comment

(required) 
required 
(required)