1m.proj(1) Grass User's Manual m.proj(1)
2
3
4
6 m.proj - Converts coordinates from one projection to another (cs2cs
7 frontend).
8
10 miscellaneous, projection, transformation
11
13 m.proj
14 m.proj --help
15 m.proj [-iodec] [coordinates=east,north] [input=name] [out‐
16 put=name] [separator=character] [proj_in=string]
17 [proj_out=string] [--overwrite] [--help] [--verbose] [--quiet]
18 [--ui]
19
20 Flags:
21 -i
22 Use LL WGS84 as input and current location as output projection
23
24 -o
25 Use current location as input and LL WGS84 as output projection
26
27 -d
28 Output long/lat in decimal degrees, or other projections with many
29 decimal places
30
31 -e
32 Include input coordinates in output file
33
34 -c
35 Include column names in output file
36
37 --overwrite
38 Allow output files to overwrite existing files
39
40 --help
41 Print usage summary
42
43 --verbose
44 Verbose module output
45
46 --quiet
47 Quiet module output
48
49 --ui
50 Force launching GUI dialog
51
52 Parameters:
53 coordinates=east,north
54 Input coordinates to reproject
55
56 input=name
57 Name of input coordinate file
58 ’-’ for standard input
59
60 output=name
61 Name for output coordinate file (omit to send to stdout)
62
63 separator=character
64 Field separator (format: input[,output])
65 Special characters: pipe, comma, space, tab, newline
66 Default: pipe
67
68 proj_in=string
69 Input projection parameters (PROJ.4 style)
70
71 proj_out=string
72 Output projection parameters (PROJ.4 style)
73
75 This program allows a user to convert coordinates from one projection
76 to another. Coordinates can be read from one file, converted, and
77 results written to another file. Alternatively, if the input=-, east‐
78 ings and northings may be passed to the program directly from standard
79 input. If the output option is omitted, the results are sent directly
80 to standard output. In this way m.proj can be used as a simple frontend
81 to the PROJ.4 cs2cs utility. The -i or -o flags make the task espe‐
82 cially easy for the common problem of converting to or from lat/long
83 WGS84.
84
85 Note: This program does not transform GRASS maps, it is designed to
86 determine the equivalent coordinate values of an individual position or
87 list of positions. Use v.proj to reproject vector maps or r.proj for
88 raster maps.
89
91 cs2cs expects input data to formatted as x y, so if working with lati‐
92 tude-longitude data be sure to send the x value first, i.e., longitude
93 latitude. Output data will be exported using the same convention.
94
95 cs2cs will treat a third data column as a z value (elevation) and will
96 modify the value accordingly. This usually translates into small but
97 real differences in that data column.
98
99 cs2cs does not expect the input stream to contain column headings, only
100 numbers. If your data file has lines you wish to have passed through
101 without being processed, they must start with the ’#’ character.
102
103 If sending m.proj data from standard input, be aware that the data is
104 first stored to a temporary file before being processed with cs2cs. It
105 is therefore not advisable to send m.proj data from an open data
106 stream. The module will stop listening for incoming data after 2 sec‐
107 onds of inactivity. You may use the projection parameters gleaned from
108 m.proj’s verbose mode (--verbose) with cs2cs directly in this case.
109
110 Custom projection parameters can be used via the proj_in and proj_out
111 options. Full documentation of the projection parameter format may be
112 found on the PROJ.4 website. Using these options will fully override
113 the default parameters the module would normally use.
114
115 By using the --verbose verbose flag, the user can see exactly what pro‐
116 jection parameters will be used in the conversion as well as some other
117 informative messages.
118
119 If output is to lat/long, it will be formatted using PROJ.4’s
120 Degree:Minute:Second (DMS) convention of DDDdMM’SSS.SS"H. This can be
121 handy if you wish to quickly convert lat/long decimal degree data into
122 its DMS equivalent.
123 Alternatively, to have m.proj output data in decimal degrees, use the
124 -d flag. This flag can also be used with non-lat/long data to force a
125 higher number of decimal places (the cs2cs default is 2).
126
127 Note that Lat/long output can be converted to GRASS’s DMS convention
128 (DDD:MM:SSS.SSSH) by piping the results of m.proj through the sed
129 stream editor as follows.
130 m.proj -o ... | sed -e ’s/d/:/g’ -e "s/’/:/g" -e ’s/"//g’
131
133 The examples are suitable for the North Carolina sample dataset if not
134 stated otherwise:
135
136 Reproject vector point coordinate pairs to Long/Lat WGS84
137 The m.proj module is designed to work seamlessly with point data
138 exported from the GIS with v.out.ascii, as the following example shows.
139 # Long/Lat WGS84 output in DMS
140 v.out.ascii bridges | m.proj -o input=-
141 # Long/Lat WGS84 output in decimal degree
142 v.out.ascii bridges | m.proj -o -d input=-
143
144 Reproject Long/Lat WGS84 coordinate pair to current map projection
145 To convert a Long/Lat WGS84 coordinate pair to the current map projec‐
146 tion using the -i flag which sets the target projection parameters
147 automatically from the current location definition:
148 echo "-78.61168178 33.92225767" | m.proj -i input=-
149 645513.47|19180.31|0.00
150
151 The same, but load points from a file named waypoints.txt and continue
152 on to import the results into a GRASS vector points map in the current
153 map projection:
154 # check file content
155 cat waypoints.txt
156 -78.43977824 33.89587173
157 -78.54944691 33.88964566
158 -78.51078074 33.88141495
159 -77.14037951 35.60543020
160 # reproject points and generate vector map on the fly
161 m.proj -i input=waypoints.txt | v.in.ascii input=- output=test_pnts
162 # verify result
163 v.db.select test_pnts cat|dbl_1|dbl_2|dbl_3
164 1|661427.74|16329.14|0
165 2|651285.43|15586.79|0
166 3|654867.21|14690.64|0
167 4|778074.58|207402.6|0
168
169 Custom projection parameter usage
170 To transform points from a UTM projection (here specified with detailed
171 projection definition rather than using an EPSG code) into the
172 Gauss-Krüger Grid System, importing from and exporting to files:
173 m.proj proj_in="+proj=utm +name=utm +a=6378137.0 +es=0.006694380 \
174 +zone=32 +unfact=1.0" proj_out="+proj=tmerc +name=tmerc \
175 +a=6377397.155 +es=0.0066743720 +lat_0=0.0 +lon_0=9.0 +k=1.0 \
176 +x_0=3500000.0" input=utm.coord.txt output=new.gk.coord.txt
177
178 Projection parameters provided in the above case: +proj (projection
179 type), +name (projection name), +a (ellipsoid: equatorial radius), +es
180 (ellipsoid: eccentricity squared), +zone (zone for the area), +unfact
181 (conversion factor from meters to other units, e.g. feet), +lat_0
182 (standard parallel), +lon_0 (central meridian), +k (scale factor) and
183 +x_0 (false easting). Sometimes false northing is needed which is coded
184 as +y_0. Internally, the underlying PROJ.4 projection library performs
185 an inverse projection to latitude-longitude and then projects the coor‐
186 dinate list to the target projection.
187
188 Datum conversions are automatically handled by the PROJ.4 library if
189 +datum setings are specified on both the input and output projections
190 on the command line. The +towgs84 parameter can be used to define
191 either 3 or 7 term datum transform coefficients, satisfying this
192 requirement.
193
194 If a datum is specified there is no need for the +ellps= or underlying
195 parameters, +a=, +es=, etc.
196
197 Another custom parameter usage example:
198 m.proj proj_in="+proj=tmerc +datum=ire65 +lat_0=53.5 +lon_0=-8 +x_0=200000 \
199 +y_0=250000 +k=1.000035" proj_out="+proj=ll +datum=wgs84" input=wpt.txt
200 or without datum transformation:
201 m.proj proj_in="+proj=tmerc +ellps=modif_airy +lat_0=53.5 +lon_0=-8 +x_0=200000 \
202 +y_0=250000 +k=1.000035" proj_out="+proj=ll +datum=wgs84" input=wpt.txt
203
204 In this example no datum transformation will take place as a datum was
205 not specified for the input projection. The datum specified for the
206 output projection will thus be silently ignored and may be left out;
207 all that is achieved a simple conversion from projected to geodetic
208 co-ordinates, keeping the same datum (and thus also the same ellip‐
209 soid).
210
211 For more usage examples, see the documentation for the PROJ.4 cs2cs
212 program.
213
215 · Evenden, G.I. (1990) Cartographic projection procedures for
216 the UNIX environment - a user’s manual. USGS Open-File Report
217 90-284 (OF90-284.pdf) See also there: Interim Report and 2nd
218 Interim Report on Release 4, Evenden 1994).
219
220 · PROJ.4 Cartographic Projection Library
221
223 g.proj, r.proj, v.proj, i.rectify, v.in.ascii, v.out.ascii
224
226 M. Hamish Bowman, Dept. Marine Science, Otago University, New Zealand
227 Functionality inspired by the m.proj and m.proj2 modules for GRASS GIS
228 5.
229
230 Last changed: $Date: 2017-08-16 08:58:03 +0200 (Wed, 16 Aug 2017) $
231
233 Available at: m.proj source code (history)
234
235 Main index | Miscellaneous index | Topics index | Keywords index |
236 Graphical index | Full index
237
238 © 2003-2019 GRASS Development Team, GRASS GIS 7.6.0 Reference Manual
239
240
241
242GRASS 7.6.0 m.proj(1)