Batch Project (Data Management)

Summary

Changes the coordinate system of a set of input feature classes or feature datasets to a common coordinate system. To change the coordinate system of a single feature class or dataset use the Project tool.

Usage

  • Any valid inputs to the Project tool, such as all feature classes or feature datasets, are also valid inputs for this tool.

  • Although both the Output Coordinate System and Template Dataset are optional parameters, one of them must be entered. Keeping both of these parameters empty will cause tool execution to fail.

  • If needed, a Geographic Transformation will be calculated for each input dataset based on the output coordinate system, input coordinate system, input dataset’s extent.

  • A feature class or dataset with an undefined or Unknown coordinate system must first have its coordinate system defined using the Define Projection tool before it can be used with the tool.

  • The names of the input feature classes are used to name the output feature classes. For example, if the input is C:\myworkspace\Gondor.shp, the output feature class will be named Gondor.shp. If the name already exists in the output workspace, a number will be appended (for example, _1) to the end to make it unique (Gondor_1.shp).

Parameters

LabelExplanationData Type
Output Workspace

The location of each new output feature class or feature dataset.

Feature Dataset; Workspace
Output Coordinate System
(Optional)

The coordinate system to be used to project the inputs. The default value is set based on the output coordinate system environment.

Coordinate System
Template dataset
(Optional)

The feature class or the feature dataset used to specify the output coordinate system used for projection.

Geodataset
Transformation
(Optional)

The name of the geographic transformation to be applied to convert data between two geographic coordinate systems (datums).

String

Derived Output

LabelExplanationData Type
Updated Output Workspace

The location of each new output feature class or feature dataset.

Workspace; Feature Dataset

arcpy.management.BatchProject(Output_Workspace, {Output_Coordinate_System}, {Template_dataset}, {Transformation})
NameExplanationData Type
Output_Workspace

The location of each new output feature class or feature dataset.

Feature Dataset; Workspace
Output_Coordinate_System
(Optional)

The coordinate system to be used to project the inputs.

Valid values are a SpatialReference object, a file with a .prj extension, or a string representation of a coordinate system.

Coordinate System
Template_dataset
(Optional)

The feature class or the feature dataset used to specify the output coordinate system used for projection.

Geodataset
Transformation
(Optional)

The name of the geographic transformation to be applied to convert data between two geographic coordinate systems (datums).

String

Derived Output

NameExplanationData Type
Derived_Output

The location of each new output feature class or feature dataset.

Workspace; Feature Dataset

Code sample

BatchProject example 1 (Python window)

The following Python window script demonstrates how to use the BatchProject function in immediate mode.

import arcpy
arcpy.env.workspace = "C:/data/input/batchproject"
arcpy.BatchProject_management(["citylim.shp", "flood.shp", "faultzn.shp"], 
                              "C:/data/output/batchproject", "", 
                              "C:/data/usa.gdb/templatefc")
BatchProject example 2 (stand-alone script)

The following Python script demonstrate how to use the BatchProject function in a stand-alone script.

# Name: BatchProject.py
# Description: Changes coordinate systems of several datasets in a batch.

import arcpy

# Set workspace environment
arcpy.env.workspace = "C:/data/wgs1972.gdb"

# Input feature classes
input_features = ["cities", "counties", "blocks", "crime"]

# Output workspace
out_workspace = "C:/data/output.gdb"

# Output coordinate system - leave it empty
out_cs = ''

# Template dataset - it has GCS_WGS_1984 coordinate system
template = "C:/data/wgs1984.gdb/stateparks"

# Geographic transformation - 
transformation = "WGS_1972_To_WGS_1984_1"

res = arcpy.BatchProject(input_features, out_workspace, out_cs, template, transformation)

Related topics