minvtran
(Removed) Unproject features from map to geographic coordinates
The minvtran function has been removed. In most cases, use the
projinv function instead. If the
mapprojection field of the current
axesm-based map or specified map projection structure is
'globe', then use the ecef2geodetic function instead. For more information, see Version
History.
Syntax
[lat,lon] = minvtran(x,y)
[lat,lon,alt] = minvtran(x,y,z)
[...] = minvtran(mstruct,...)
Description
[lat,lon] = minvtran(x,y) applies the inverse
transformation defined by the map projection in the current
axesm-based map. Using minvtran, you can convert
point locations and line and polygon vertices in a planar, projected map coordinate
system to latitudes and longitudes.
[lat,lon,alt] = minvtran(x,y,z) applies the
inverse projection to 3-D input, resulting in 3-D output. If the input
Z is empty or omitted, then Z = 0 is
assumed.
[...] = minvtran(mstruct,...) takes a valid
map projection structure as the first argument. In this case, no
axesm-based map is needed.
Examples
Before using minvtran, it is necessary to create a map projection
structure. You can do this with axesm or the
defaultm function:
mstruct = defaultm('mercator');
mstruct.origin = [38.89 -77.04 0];
mstruct = defaultm(mstruct);The following latitude and longitude data for the District of Columbia is obtained
from the usastatelo shapefile:
dc = shaperead('usastatelo', 'UseGeoCoords', true,... 'Selector',{@(name) strcmpi(name,'District of Columbia'),... 'Name'}); lat = [dc.Lat]'; lon = [dc.Lon]'; [lat lon]
ans =
38.9000 -77.0700
38.9500 -77.1200
39.0000 -77.0300
38.9000 -76.9000
38.7800 -77.0300
38.8000 -77.0200
38.8700 -77.0200
38.9000 -77.0700
38.9000 -77.0700
NaN NaNThis data can be projected into Cartesian coordinates of the Mercator projection using
the projfwd function:
[x,y] = projfwd(mstruct,lat,lon); [x y]
ans =
-0.0004 0.5745
-0.0011 0.5753
0.0001 0.5762
0.0019 0.5745
0.0001 0.5724
0.0003 0.5727
0.0003 0.5739
-0.0004 0.5745
-0.0004 0.5745
NaN NaNTo transform the projected x-y data back into the unprojected
geographic system, use the minvtran function:
[lat2,lon2] = minvtran(mstruct,x,y); [lat2 lon2]
ans =
70.1302 -77.0987
70.1729 -77.1969
70.2157 -77.0204
70.1300 -76.7659
70.0276 -77.0205
70.0447 -77.0010
70.1046 -77.0009
70.1302 -77.0987
70.1302 -77.0987
NaN NaN