Label | Explanation | Data Type |
Input Map | The map from which tiles will be generated and packaged. | Map |
Package for ArcGIS Online | Bing Maps | Google Maps
| Specifies whether the tiling scheme will be generated from an existing map service or the map tiles will be generated for ArcGIS Online, Bing Maps, and Google Maps.
| Boolean |
Output File | The output path and file name for the map tile package. When the Create Multiple Packages parameter is checked, this parameter is replaced by the Output Folder parameter to specify where the tile packages will be generated. | File |
Tiling Format
| Specifies the format that will be used for the generated tiles.
| String |
Maximum Level Of Detail
| The integer representation corresponding to the number of scales used to define a cache tiling scheme. This scale value defines the maximum level up to which the cache tiles will be generated in the tile package. Larger values reflect larger scales that show more detail but require more storage space. Smaller values reflect smaller scales that show less detail and require less storage space. Possible values are from 1 to 23. The default value is 1. The maximum level of detail value must be greater than the minimum level of detail value. | Long |
Service (Optional) | The name of the map service or the .xml files that will be used for the tiling scheme. This parameter is required only when the Package for ArcGIS Online | Bing Maps | Google Maps parameter is unchecked. | Map Server; File |
Summary (Optional) | The summary information that will be added to the properties of the package. | String |
Tags (Optional) | The tag information that will be added to the properties of the package. Multiple tags can be added, separated by a comma or semicolon. | String |
Extent
(Optional) | Specifies the extent that will be used to select or clip features.
When coordinates are manually provided, the coordinates must be numeric values and in the active map's coordinate system. The map may use different display units than the provided coordinates. Use a negative value sign for south and west coordinates. | Extent |
Compression Quality (Optional) | A value between 1 and 100 for the JPEG compression quality. The default value is 75 for JPEG tile format and zero for other formats. Compression is supported only for JPEG and mixed formats. A higher value will result in a larger file size with a higher-quality image. A lower value will result in a smaller file size with a lower-quality image. | Long |
Package type
(Optional) | Specifies the type of tile package that will be created.
| String |
Minimum Level Of Detail
(Optional) | The integer representation corresponding to the number of scales used to define a cache tiling scheme. This scale value defines the level at which the cache tiles begin to be available and generated in the tile package. Possible values are from 0 to 23. The default value is 0. The minimum level of detail value must be less than or equal to the maximum level of detail value. | Long |
Area of Interest
(Optional) | A feature set that constrains where tiles will be created. Use an area of interest to create tiles for irregularly shaped areas or multipart features. The areas outside the bounding box of area of interest features will not be cached. If no value is provided for this parameter, the area of interest will be the full extent of the input map. | Feature Set |
Create Multiple Packages
(Optional) | Specifies whether a single large tile package or multiple small tile packages will be generated. This parameter is not available when the Parallel Processing Factor environment variable is 0 or when the Package type parameter is set to tpk.
| Boolean |
Output Folder | The location where the multiple tile packages will be generated. If the output folder is not empty, a subfolder will be created in the output folder to store the tiles. An automatically generated GUID will be used as the folder name. When the Create Multiple Packages parameter is unchecked, this parameter is replaced by the Output File parameter to specify the name of the single tile package that will be generated. | Folder |
Summary
Generates tiles from a map and packages them as a single tile package or multiple smaller tile packages.
Usage
This tool honors the Parallel Processing Factor environment variable. When the Create Multiple Packages parameter is checked, parallel processing will generate cache content across multiple processes to use the available CPU and generate tile packages when the default threshold (1 GB size limit) is reached.
Use the Create Multiple Packages parameter when you are working with large volumes of data. With this parameter checked, multiple small tile packages will be created instead of a single large one. This allows you to generate tile content greater than 500 GB in single job and share it or upload and publish it to ArcGIS Online as a hosted tile layer. Using this approach, you can generate large tile content into small tile packages for sharing without subdividing cache extents and levels into multiple jobs.
When this parameter is checked, you must provide a path to an empty folder on the file system in the Ouptut Folder parameter to save the output packages. You can create multipart packages only when the Package type parameter is set to tpkx and the Parallel Processing Factor environment variable is not 0.
When the Tiling Format parameter is set to PNG, the tool will automatically use the correct format (PNG8, PNG24, or PNG32) based on the value specified for the Maximum Level Of Detail parameter.
The input map must include a description and tags for the tool to run. To add a description and tags, right-click the map name in the Contents pane, and select Properties. On the Map Properties dialog box, on the Metadata tab, fill in the Tags and Description text boxes.
Parameters
arcpy.management.CreateMapTilePackage(in_map, service_type, output_file, format_type, level_of_detail, {service_file}, {summary}, {tags}, {extent}, {compression_quality}, {package_type}, {min_level_of_detail}, {area_of_interest}, {create_multiple_packages}, output_folder)
Name | Explanation | Data Type |
in_map | The map from which tiles will be generated and packaged. | Map |
service_type | Specifies whether the tiling scheme will be generated from an existing map service or whether map tiles will be generated for ArcGIS Online, Bing Maps, and Google Maps.
| Boolean |
output_file | The output path and file name for the map tile package. | File |
format_type | Specifies the format that will be used for the generated tiles.
| String |
level_of_detail | The integer representation corresponding to the number of scales used to define a cache tiling scheme. This scale value defines the maximum level up to which the cache tiles will be generated in the tile package. Larger values reflect larger scales that show more detail but require more storage space. Smaller values reflect smaller scales that show less detail and require less storage space. Possible values are from 1 to 23. The default value is 1. The maximum level of detail value must be greater than the minimum level of detail value. | Long |
service_file (Optional) | The name of the map service or the .xml files that will be used for the tiling scheme. This parameter is required only when the service_type parameter is set to EXISTING. | Map Server; File |
summary (Optional) | The summary information that will be added to the properties of the package. | String |
tags (Optional) | The tag information that will be added to the properties of the package. Multiple tags can be added, separated by a comma or semicolon. | String |
extent (Optional) | Specifies the extent that will be used to select or clip features.
| Extent |
compression_quality (Optional) | A value between 1 and 100 for the JPEG compression quality. The default value is 75 for JPEG tile format and zero for other formats. Compression is supported only for JPEG and mixed formats. A higher value will result in a larger file size with a higher-quality image. A lower value will result in a smaller file size with a lower-quality image. | Long |
package_type (Optional) | Specifies the type of tile package that will be created.
| String |
min_level_of_detail (Optional) | The integer representation corresponding to the number of scales used to define a cache tiling scheme. This scale value defines the level at which the cache tiles begin to be available and generated in the tile package. Possible values are from 0 to 23. The default value is 0. The minimum level of detail value must be less than or equal to the maximum level of detail value. | Long |
area_of_interest (Optional) | A feature set that constrains where tiles will be created. Use an area of interest to create tiles for irregularly shaped areas or multipart features. The areas outside the bounding box of area of interest features will not be cached. If no value is provided for this parameter, the area of interest will be the full extent of the input map. | Feature Set |
create_multiple_packages (Optional) | Specifies whether a single large tile package or multiple small tile packages will be generated. This parameter is not available when the parallelProcessingFactor environment variable is 0 or when the package_type parameter is set to tpk.
| Boolean |
output_folder | The output folder where the multiple tile packages will be generated. If the output folder is not empty, a subfolder will be created in the output folder to store the tiles. An automatically generated GUID will be used as the folder name. | Folder |
Code sample
The following Python script demonstrates how to use the CreateMapTilePackage function from the Python window.
import arcpy
arcpy.env.workspace = r"C:\Data\MinMaxLOD\states73K"
aprx = arcpy.mp.ArcGISProject(r"C:\Data\MinMaxLOD\states73K\states73K_1.aprx")
map1 = aprx.listMaps()[0]
arcpy.management.CreateMapTilePackage(map1, "ONLINE", "Example.tpkx", "PNG", "5")
Find all the maps in the project and create a single map tile package for each map.
# Name: CreateMapTilePackage.py
# Description: Find all the maps in the project and
# create a single map tile package for each map
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = r"C:\Data\MinMaxLOD\states73K"
# Loop through the project, find all the maps, and
# create a single map tile package for each map,
# using the same name as the map
p = arcpy.mp.ArcGISProject("c:\\temp\\myproject.aprx")
extent = ""
aoi = ""
for m in p.listMaps():
print("Packaging " + m.name)
arcpy.management.CreateMapTilePackage(m, "ONLINE", "{}.tpkx".format(m.name),
"PNG", 9, None, "MapSummary", "MapTag", extent, "", "tpkx", 5, aoi)
Create multiple map tile packages for a map.
# Name: CreateMapTilePackage.py
# Description: Create multiple map tile packages for a given map
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = r"C:\Data\MinMaxLOD\states73K"
# Create multiple map tile packages for given map,
aprx = arcpy.mp.ArcGISProject("c:\\temp\\myproject.aprx")
map1 = aprx.listMaps()[0]
extent = ""
aoi = ""
createMultiplePackages = "create_multiple_packages"
outputFolder = r"C:\11\multi"
arcpy.management.CreateMapTilePackage(map1, "ONLINE", "", "PNG", 9, None, "MapSummary", "MapTag",
extent, "", "tpkx", 5, aoi,createMultiplePackages, outputFolder )