Summary
Creates one or more grids and graticules layers from multiple selected areas of interest (AOIs) using the Make Defense Grids and Graticules tool. A grids and graticules layer is a group layer composed of point, line, polygon, and annotation feature classes. Masking and symbology are applied to the layers in the group layer to create feature-based cartographic effects for high-end map products.
This tool supports the creation of single, dual, and zipper zone grids. Zone type is determined by the selected features within the input AOI. This tool determines which grid .xml template is used in grid generation.
Usage
This tool creates one grids and graticules layer per selected feature in the Input Area of Interest.
You can create grid templates or edit existing grid templates using the Grids and Graticules Designer in the ArcGIS Production Mapping or ArcGIS Defense Mapping solution.
Grid templates can be found in the <ArcGIS installation directory>\GridTemplates\DefenseMapping directory.
The Reference Scale parameter is used when creating grids and graticules layer features. Reference scale can be set in the Grid Template (XML) parameter file or read from the current ArcGIS environment.
Syntax
arcpy.defense.BatchDefenseGrids(in_aoi_features, grid_type, template, in_workspace, in_dataset, grid_field, reference_scale, mask_margin)
Parameter | Explanation | Data Type |
in_aoi_features | The polygon feature layer that contains one or more selected features. A grids and graticules layer is created for each selected feature. | Layer |
grid_type | Specifies the type of Defense Mapping cartographic product that will include the grid. This tool uses the in_aoi_features parameter extent and the grid_type parameter value to populate the template parameter with an appropriate grid .xml file. If grid_type is set to NONE, the template parameter will not automatically populate. Set grid_type to NONE to manually select a template .xml file.
| String |
template | The .xml file that stores a cartographic specification's graphic properties for each grid layer. These properties define the features and elements that compose a grids and graticules layer. | File |
in_workspace | The workspace used in conjunction with the input feature dataset. | Workspace |
in_dataset | The feature dataset that will store the grids and graticules layer feature classes. The feature dataset will be created if it does not already exist. The feature dataset name is appended to all feature classes. Existing feature classes will be overwritten if you reexecute the tool with the same input parameters. | String |
grid_field | The field from in_aoi_layer whose values are used to name each grids and graticules layer. These values are also used to name the ANO_Masks feature classes created in in_dataset. | Field |
reference_scale | The scale at which the grids and graticules layer features are created and will be viewed. If this parameter is not set, the tool will use the reference scale set in the Grid Template (XML) file. If the reference scale in the Grid Template (XML) file is defined as Use Environment, the parameter value is derived in the following order:
| Double |
mask_margin | The amount of space that exists between the side of the annotation and the edge of the mask polygon feature. The units can be defined in page or map units. The default value depends on the specification (either 0.2 or 0.7 millimeters). This tool creates a mask with the default value, in page units, from the edge of any part of the grid annotation. | Linear unit |
Code sample
BatchDefenseGrids example 1 (stand-alone script)
The following code example demonstrates how to execute the BatchDefenseGrids function.
# Running the Batch Defense Grids tool with a preselected grid xml
# Importing arcpy module
import arcpy
# Checking out Defense extension
arcpy.CheckOutExtension('defense')
# Setting environment to allow overwrite output
arcpy.env.overwriteOutput = 1
# Setting variables for necessary data
area_of_interest = r'C:\DefenseProductFiles\ReferenceData\MapIndex.gdb\MapIndex\TLM50_Index'
grid_workspace = r'C:\Data\Grids.gdb'
grid_xml = r'C:\Program Files (x86)\ArcGIS\Desktop10.4\GridTemplates\DefenseMapping\TM50_Single.xml'
# Setting variables for input parameters
grid_type = 'TM50'
grid_dataset = 'BatchGrids'
grid_field = 'NRN'
reference_scale = 50000
mask_margin = '0.2 Millimeters'
# Creating AOI layer
selection_query = "NRN = 'V795X16573'"
selection_query2 = "NRN = 'V795X16574'"
arcpy.management.MakeFeatureLayer(area_of_interest, 'AOI')
arcpy.management.SelectLayerByAttribute('AOI', 'NEW_SELECTION', selection_query)
arcpy.management.SelectLayerByAttribute('AOI', 'ADD_TO_SELECTION', selection_query2)
# Calling Batch Defense Grids Tool
arcpy.defense.BatchDefenseGrids('AOI', grid_type, grid_xml, grid_workspace, grid_dataset, grid_field, reference_scale, mask_margin)
# Checking in Defense Extension
arcpy.CheckInExtension('defense')
BatchDefenseGrids example 2 (stand-alone script)
The following code example demonstrates how to execute the BatchDefenseGrids function.
# Running Batch Defense Grids allowing the tool to decide to proper grid xml, grid field name, scale, and anno mask margin
# Importing arcpy module
import arcpy
# Checking out Defense extension
arcpy.CheckOutExtension('defense')
# Setting environment to allow overwrite output
arcpy.env.overwriteOutput = 1
# Setting variables for necessary data
area_of_interest = r'C:\DefenseProductFiles\ReferenceData\MapIndex.gdb\MapIndex\TLM50_Index'
grid_workspace = r'C:\Data\Grids.gdb'
# Setting variables for input parameters
grid_type = 'TM50'
grid_dataset = 'BatchGrids'
# Creating AOI layer
selection_query = "NRN = 'V795X16573'"
selection_query2 = "NRN = 'V795X16574'"
arcpy.management.MakeFeatureLayer(area_of_interest, 'AOI')
arcpy.management.SelectLayerByAttribute('AOI', 'NEW_SELECTION', selection_query)
arcpy.management.SelectLayerByAttribute('AOI', 'ADD_TO_SELECTION', selection_query2)
# Calling Batch Defense Grids Tool
arcpy.defense.BatchDefenseGrids('AOI', grid_type, '#', grid_workspace, grid_dataset, '#', '#', '#')
# Checking in Defense Extension
arcpy.CheckInExtension('defense')
Environments
Licensing information
- Basic: No
- Standard: No
- Advanced: Requires Defense Mapping