Tag: ArcGIS Online
Monday, July 23, at the GeoWeb 20007 Conference in Vancouver, British Columbia, a workshop featuring ArcGIS Explorer and ArcGIS Online will be offered. The workshop is titled Unlocking the Potential of ArcGIS Explorer and ArcGIS Online.
The half-day workshop will focus on Explorer and will cover a broad range of topics, including initial installation and setting up your preferences, to authoring your own tasks and centralized enterprise administration. ArcGIS Online will also be featured, including different ways you can use it in your ArcGIS Desktop. Whether an expert or novice, the course will have something for everyone. If you’re already planning to attend, we hope to see you there. Registration can also be made on-site at the conference, and single day and single workshop passes are available.
Here’s something that may be of interest to ArcGIS Explorer users. Tomorrow, Thursday, July 19, ESRI will present a Live Training Seminar titled Introduction to ArcGIS Online.
The seminar will be a live broadcast covering all of the basics of using ArcGIS Online in ArcMap and Explorer. The seminar will be given three times throughout the day, so there’s lot’s of opportunities to tune in. Listeners will also have a chance to ask questions. If you’ve not watched a live training seminar before, they’re a great way to learn more about a particular topic.
Click here for the broadcast schedule, software requirements for joining the seminar, course details, and other information on the Live Training Seminar series.
ArcMap allows you to view cached map services at any scale and projection. When you zoom in to a cached map service, ArcMap generally fetches the tile from the next largest scale, then resamples it to fit the view. This works great for layers like satellite imagery and continuous surfaces; however, vector features such as roads and boundaries, as well as labels, become rasterized when you create the cache, and sometimes the resampling causes these features to display at less-than-expected quality. To minimize the amount of resampling and therefore get the best display quality, you may want to limit your work in ArcMap to the scales at which the map was cached.
If you decide you want to work only at the cached scales, consider loading these scales into ArcMap’s dropdown scale list. One of the options in the dropdown is “Customize this list”. Here you can manually enter the scales from your cache.
Alternatively, you can load in a text file containing a set of scales. This is useful if you have several ArcMap users in your organization that will be viewing the same caches; just distribute the text file and they can load it in instead of typing all of the scales.
If you’re viewing caches from ArcGIS Online, you can load in this text file of ArcGIS Online scales which contains all of the scales at which ArcGIS Online services have been cached. If you’re wondering why the scales are not round numbers, you’ll find an explanation in this previous post.
These scales are especially useful when viewing the World Street Map as well as any map containing boundary and transportation overlays.
Update: In ArcMap 9.3, a new feature was added that allows you to right-click a cached map service layer in the table of contents and click “Zoom to Nearest Cache Resolution”. This can be an easy alternative to loading in a text file.
An excellent write-up on one of the demonstrations performed during Jack Dangermond’s opening plenary at the 2007 ESRI User Conference this morning appears on the ESRI User Conference Blog. The post, titled Integrating Online Geospatial Services Delivers Superior Visualization and Information, details the use of ArcGIS Explorer and ArcGIS Online. The write-up includes several screenshots of what was shown. If you are at the User Conference, make sure to stop by the Explorer showcase area to see these demonstrations again, and learn how you can do similar things with Explorer.
You might be wondering where the “world” or globe that you see when you first start ArcGIS Explorer comes from. It’s actually one of many globes that you can choose to open that are part of ArcGIS Online. ArcGIS Online is a new family (in fact it’s still in beta) of online content and other services hosted by ESRI. These are free for ArcGIS Desktop users, which includes ArcGIS Explorer. ArcGIS Online also publishes 2D and 3D basemaps for ArcMap, ArcGlobe, and ArcReader. You can find other ArcGIS Online globes at the ArcGIS Explorer Resource Center. To navigate there, click Help and choose the Resource Center, or click File > Open and then choose OK.
To learn more about each globe, click its name. You’ll see a short description, and for more details you can click the link at the top of the description to navigate to the ArcGIS Online site where each is described in more detail. For more information, you can visit the ArcGIS Online product site.
One purpose of this blog is to share some of the things we’ve learned about our software by using it ourselves. The ArcGIS Online project uses the ArcGIS Server map and globe caching technology. In this post, we share a technique we’ve developed to create 3D caches for ArcGIS Online.
For performance and appearance benefits, many of the 3D globe caches on ArcGIS Online were created originally from 2D fused map caches. These 2D caches were overlaid on the globe and cached to make globe tiles. This technique improves the performance of the globe service because it yields only one cached layer. It also improves the appearance of the service because anti-aliasing effects in the 2D cache transfer to the 3D cache. This post lists the steps that you can follow to create a 3D cache from a 2D cache.
The instructions in this post are written for intermediate to advanced ArcGIS Server users. Before attempting this technique, it’s helpful to have some previous experience publishing ArcGIS Server services, creating map caches, and connecting to GIS services in ArcGlobe.
Create the 2D map cache
The first step in this process is to create the 2D cached map service. Start by using ArcMap to create an attractive map document that is designed for display at some pre-determined scale levels. You’ll need to select the scale levels you want cached and then apply the appropriate symbology for each scale level. You can find tips for this process in Planning a map cache.
Below is a list of scale levels used by ArcGIS Online 2D caches. These scale levels translate well to the fixed scale levels used by ArcGIS Explorer and ArcGlobe, and are strongly recommended if you plan on eventually creating a 3D cache from your 2D cache. The high-precision values of the scales prevent tiles from overlapping at the edge of the globe near the International Date Line. If your map does not have worldwide coverage, you do not have to enter all of the decimal places for these numbers, but it’s recommended that you stay close to these numbers for the best visual effects. You do not have to use all of the scales; you can use a sequential subset of them.
Recommended scales for your 2D cache
- 147748799.285417 (To clarify, this corresponds to approximately 1:147,748,799 scale)
- 73874399.6427087 (This corresponds to approximately 1:73,874,299)
- 36937199.8213544 (Etc.)
Once you’ve finished designing and creating your map document, you should publish it as an ArcGIS Server map service and create a map cache. If using the above values, you can copy and paste them directly into the Generate Map Server Cache tool. This post does not focus on the details of publishing the 2D service and generating the cache, but ample instructions are available in the ArcGIS Server Help.
Configure a custom error for missing tiles
A previous post on this blog explained how you can configure your web server to return a blank or “No data available” image in areas where a client cannot find a cache tile. This is an important step when you’re generating a 3D cache from a 2D cache because the tile edges may not always line up between the two types of caches. The 3D cache generating process will perform better with a blank or “No data available” tile than it will when no tile is found. Follow the steps at this link to configure your web server to return the blank tile: Configuring your server to display a “Data not available” tile for empty map cache areas.
Create a globe document from the 2D service
Now that you have a 2D map service running, you can add it to an ArcGlobe document. The service will be draped over the globe in 3D. Follow these steps to create and appropriately configure the document:
- Start ArcGlobe
Tip: If you’re using ArcGlobe in a remote desktop session, you may get better performance by resizing the application window to eliminate the globe portion of the display. You don’t need to see the globe during these steps.
- Remove the default layers named Continents and World Image.
- Click Tools > Options and click the Cache tab.
- Set the Cache path to be the same as the server cache directory where you want your globe cache to be created, with “GlobeCache” appended to the end (Example: \myServercacheGlobeCache) This is an application-level property, so you may want to make note of the original cache path and set this value back the next time you use ArcGlobe.
- Click OK to dismiss the options dialog, then click the Add Data button.
- Add the 2D map service that you created in the previous steps. Be sure to use an Internet connection to ArcGIS Server (not a local connection). ArcGlobe can display the 2D service draped over the globe.
- Right-click the map service layer and select Properties.
- In the Globe General tab, modify the Layer Name and Description as you like.
- Click the Cache tab
- If you’re creating a base map layer, such as satellite imagery or a street map, check “Use lossy spatial compression”. If you’re creating a transparent reference layer, such as boundaries or a road network, this compression is not necessary.
- If you are using the recommended ArcGIS Online scale levels listed above, change the minimum cell size to twice the calculated value. Leaving this unchanged will cause your cache to grow larger than necessary.
- Click OK to dismiss the dialog.
- Save the globe document and close ArcGlobe.
Create a globe service
Now you need to publish a globe service using the globe document you created in the steps above. You can create the service in ArcCatalog or Manager. Be sure to set the service properties to reference the appropriate cache directory (It’s not necessary to append “GlobeCache” to the name this time.)
The globe service you create should be pooled, with 2 – 4 instances per server object container (SOC) that will be employed in the cache-building process. You may need to adjust this number depending on memory and CPU constraints you observe during the caching process.
Note about number of service instances: The map service that you created earlier only needs to have about ¼ the number of instances that your globe service has at this point. This is because you’ve cached the map service already, so requests for its tiles can be generally satisfied by the virtual cache directory, without making a request to the GIS server. The globe service is going to need a lot of instances while caching. After the cache is generated you can reduce the number of globe service instances.
Generate a globe cache
Once the globe service is started, you can begin generating the cache. You must do this step in ArcCatalog. In the Caching tab of the globe service properties, you’ll find two options for generating the cache. The Generate button creates a cache for the entire globe service, while the Update option only caches an extent that you provide.
As you set the parameters for the caching tools, you’ll need to select the levels of detail that the cache will be created at. Set the From level to “Globe – 1:10000000″ even if your service does not have global coverage. This will not generate an unreasonably large cache because tiles that are outside the service extent will just be skipped by the cache generation process.
When selecting the To level of detail, use the table below which associates each ArcGIS Online scale level with the appropriate To level of detail you should use for your globe cache. For example, if your map cache’s closest scale level is 72142.968… choose “City – 1:9765″ from the To Level of Detail dropdown in the Generate Globe Server Cache tool. Ignore the scale given in the dropdown (in this example 1:9765).
|Scale level||Globe cache “To” level of detail|
When you’ve set all of the parameters for the caching tools, click OK and let the cache generation process do its work. When it completes, you’ll have a set of globe tiles that look like the tiles in your 2D map cache.
Create a disconnected service (optional)
At this point, you could leave your globe service running and users would see the new cache tiles. However, your map service would always need to be running in order for your globe service to start correctly. To avoid this dependence on the map service, you can do the following to create a disconnected globe service:
- Stop the globe service you created previously.
- Open ArcGlobe and create a new globe document.
- Remove the default layers named Continents and World Image.
- Click the Add Data button.
- Browse to the folder on disk that contains the globe cache you just created. This involves browsing to your server cache directory, opening the GlobeCache folder, and finding the folder that represents your new globe cache. (Tip: The folder name will probably contain a representation of the URL of your 2D service, for example: ESRI_ServerLyrLocalGlobeCache_http___myserver_arcgis_services_world_mapserver_Layers_world.)
- Inside the globe cache’s folder, you’ll see a file named cache.lyr. Add cache.lyr to your map.
- Save the globe document and close ArcGlobe.
- Use ArcGIS Server to publish the globe document as a globe service. You’ve created a disconnected globe service.
(Note: Creating a 3D cache from a 2D cache using the method described above adds temporary local cache files that can add up to cumbersome sizes during long caching jobs. If this occurs you can use the operating system tools to schedule a task that deletes the local cache periodically, such as every 10 minutes. The local cache is typically stored in C:Documents and Settings<SOC account name>Local SettingsTempesrimapcache.)
Do you have a question about this technique or a tip of your own you’d like to share? If so, please leave a comment.