.TH "gdaltransform" 1 "Wed Jan 8 2020" "GDAL" \" -*- nroff -*-
.ad l
.nh
.SH NAME
gdaltransform \- Transforms coordinates\&.
.SH "SYNOPSIS"
.PP
.PP
.nf
gdaltransform [--help-general]
    [-i] [-s_srs srs_def] [-t_srs srs_def] [-to "NAME=VALUE"]
    [-order n] [-tps] [-rpc] [-geoloc]
    [-gcp pixel line easting northing [elevation]]* [-output_xy]
    [srcfile [dstfile]]
.fi
.PP
.SH "DESCRIPTION"
.PP
The gdaltransform utility reprojects a list of coordinates into any supported projection,including GCP-based transformations\&.
.PP
.IP "\fB\fB-s_srs\fP \fIsrs def\fP:\fP" 1c
source spatial reference set\&. The coordinate systems that can be passed are anything supported by the OGRSpatialReference\&.SetFromUserInput() call, which includes EPSG PCS and GCSes (i\&.e\&. EPSG:4296), PROJ\&.4 declarations (as above), or the name of a \&.prj file containing well known text\&. 
.IP "\fB\fB-t_srs\fP \fIsrs_def\fP:\fP" 1c
target spatial reference set\&. The coordinate systems that can be passed are anything supported by the OGRSpatialReference\&.SetFromUserInput() call, which includes EPSG PCS and GCSes (i\&.e\&. EPSG:4296), PROJ\&.4 declarations (as above), or the name of a \&.prj file containing well known text\&. 
.IP "\fB\fB-to\fP \fINAME=VALUE\fP:\fP" 1c
set a transformer option suitable to pass to GDALCreateGenImgProjTransformer2()\&.  
.IP "\fB\fB-order\fP \fIn\fP:\fP" 1c
order of polynomial used for warping (1 to 3)\&. The default is to select a polynomial order based on the number of GCPs\&. 
.IP "\fB\fB-tps\fP:\fP" 1c
Force use of thin plate spline transformer based on available GCPs\&. 
.IP "\fB\fB-rpc\fP: \fP" 1c
Force use of RPCs\&. 
.IP "\fB\fB-geoloc\fP:\fP" 1c
Force use of Geolocation Arrays\&. 
.IP "\fB\fB-i\fP\fP" 1c
Inverse transformation: from destination to source\&. 
.IP "\fB\fB-gcp\fP\fIpixel line easting northing [elevation]\fP: \fP" 1c
Provide a GCP to be used for transformation (generally three or more are required) 
.IP "\fB\fB-output_xy\fP: \fP" 1c
(GDAL >= 2\&.0) Restrict output to 'x y' instead of 'x y z' 
.IP "\fB\fIsrcfile\fP:\fP" 1c
File with source projection definition or GCP's\&. If not given, source projection is read from the command-line -s_srs or -gcp parameters  
.IP "\fB\fIdstfile\fP:\fP" 1c
File with destination projection definition\&.  
.PP
.PP
Coordinates are read as pairs (or triples) of numbers per line from standard input, transformed, and written out to standard output in the same way\&. All transformations offered by gdalwarp are handled, including gcp-based ones\&.
.PP
Note that input and output must always be in decimal form\&. There is currently no support for DMS input or output\&.
.PP
If an input image file is provided, input is in pixel/line coordinates on that image\&. If an output file is provided, output is in pixel/line coordinates on that image\&.
.SH "Reprojection Example"
.PP
Simple reprojection from one projected coordinate system to another:
.PP
.PP
.nf
gdaltransform -s_srs EPSG:28992 -t_srs EPSG:31370
177502 311865
.fi
.PP
.PP
Produces the following output in meters in the 'Belge 1972 / Belgian Lambert
72' projection:
.PP
.PP
.nf
244510.77404604 166154.532871342 -1046.79270555763
.fi
.PP
.SH "Image RPC Example"
.PP
The following command requests an RPC based transformation using the RPC model associated with the named file\&. Because the -i (inverse) flag is used, the transformation is from output georeferenced (WGS84) coordinates back to image coordinates\&.
.PP
.PP
.nf
gdaltransform -i -rpc 06OCT20025052-P2AS-005553965230_01_P001.TIF
125.67206 39.85307 50
.fi
.PP
.PP
Produces this output measured in pixels and lines on the image: 
.PP
.nf
3499.49282422381 2910.83892848414 50

.fi
.PP
.SH "AUTHORS"
.PP
Frank Warmerdam warmerdam@pobox.com, Jan Hartmann j.l.h.hartmann@uva.nl