文件交换

图像缩略图

deg2utm

版本1.0.0.0(2.61 KB)由 拉斐尔·帕拉西奥斯
功能来转换纬度/经度载体引入UTM坐标(WGS84)

155个下载

更新2006年8月17日

查看许可证

该功能是基于由加布里埃尔·鲁伊斯·马丁内斯UTM.m功能,但不是提供GUI它的坐标矢量作品。
[X,Y,utmzone] = deg2utm(纬度,经度)
%实施例1:
%纬度= [40.3154333;46.283900;37.577833;28.645650;38.855550;25.061783];
%经度= [ - 3.4857166;7.8012333;-119.95525;-17.759533;-94.7990166;121.640266];
%[X,Y,utmzone] = deg2utm(纬度,经度);
%fprintf中( '%7.0f',x)的
%458731 407653 239027 230253 343898 362850
%fprintf中( '%7.0f',y)的
%4462881 5126290 4163083 3171843 4302285 2772478
%utmzone =
%30吨
%32Ť
%11号
%28ř
%-15 S
%51ř

%示例2:如果你有纬度/度中的坐标经度,分钟和秒
%LatDMS = [40 18 55.56;46 17 2.04];
%LonDMS = [ - 3 29 8.58;7 48 4.44];
%纬度= dms2deg(mat2dms(LatDMS));%转换成度
%经度= dms2deg(mat2dms(LonDMS));%转换成度
%[X,Y,utmzone] = deg2utm(纬度,经度)

引用作为

拉斐尔帕拉西奥斯(2020年)。deg2utm(//www.tianjin-qmedu.com/matlabcentral/fileexchange/10915-deg2utm),MATLAB中央文件交换。检索

评论和评分(34

cn1992

你好,我想详细的公式,有人可以提供与方程意见或文件。
提前致谢。

我们怎样才能选择utmzone,因为当我运行它的功能,给我错误的结果错了UTM区....

蓝眼睛

解决你的错配,LEA。该utm2deg函数值应该充满小数,如下图所示,我已经复制作者的例子。干杯
----------
1 .. Direct功能:
>>格式长摹
>>纬度= [40.3154333;46.283900;37.577833;28.645650;38.855550;25.061783];
>>经度= [ - 3.4857166;7.8012333;-119.95525;-17.759533;-94.7990166;121.640266];
>> [X,Y,utmzone] = deg2utm(纬度,经度)

X =

458730.69991953
407652.894658174
239026.690338915
230253.368028571
343898.229457034
362850.016911846

Y =

4462881.35112379
5126289.79627619
4163082.87564856
3171843.30844493
4302284.74761666
2772478.3578643

utmzone =

30吨
32Ť
11号
28ř
-15 S
51ř

2 ..倒车功能
格式化长克
X = [458730.69991953;407652.894658174;239026.690338915;230253.368028571;343898.229457034;362850.016911846];
Y = [4462881.35112379;5126289.79627619;4163082.87564856;3171843.30844493;4302284.74761666;2772478.3578643];
utmzone = [ '30 T';'32 T';'11 S';'28 R';'15 S';'51 R'];
[纬度,经度] = utm2deg(X,Y,utmzone)
产量
纬度=

40.315433306332
46.2839000044623
37.5778330030868
28.6456500029124
38.8555500050597
25.0617830039778

经度=

-3.48571659470842
7.80123331162143
-119.955249956191
-17.7595329620273
-94.799016576718
121.640266014044
----------

蓝眼睛

嗨,李,你测试你所提到的功能utm2deg - > [纬度经度] = utm2deg(X,Y,区)
这是不可用在这里,在这里deg2utm上传。拜托,你可以将它张贴为了让别人(像我)来复制你的测试?
谢谢

LEA兰格

我需要再度转换为UTM和UTM回到度。这就是为什么我检查,如果我从一个到另一个一遍又一遍的转换会发生什么:

纬度= 54 +60分之47
经度= 8 +六十〇分之十六
对于i = 1:10
[X Y区] = deg2utm(纬度,经度);
DISP([num2str(I) '' num2str(X) '' num2str(Y)]);
[纬度经度] = utm2deg(X,Y,区);
结束

它的出现,在两个方向都增加约2mm已经经过了十次:
1 452837.7301 6070927.9726
...
10 452837.7325 6070927.9747

这是不是一个问题,我的工作,因为错误是在我的工作范围可以忽略不计,但我想知道这是否是由于Matlab的局限性精度或因转换规则(或任何其它原因)的制定?

谢谢

我怎样才能得到它的运行,因为我的命令窗口中写道[X,Y,utmzone] = deg2utm(355497.97,5787938.89)和它是给我的错误信息

优秀的代码

科琳黑

优秀的和易于使用的!

科莫descargo拉función?

NAD

同样的问题疃,
不止一个UTM区域给
错误的X坐标。

可以有人帮忙。

哪里是功能mat2dms和dms2deg?

它的工作原理罚款单utmzone的区域。但对于位置区域不正确地具有一个以上的utmzone它产生X(东方向)。

谁能帮我找出?

谢谢

这是好的。我的错误!谢谢

功能完美地工作,但我对输出疑惑:其中一个表示东向(即纵向信息)和其中一个所述北向(纬度信息)?

凯尔

哎呀,我把它拿到工作 - - 我只是新奇的软件。

忘了指定我想要的输出。

对于我这样的人(进入MATLAB),请务必把你希望你的输出在命令窗口中。
IE:X,Y,utmzone] = deg2utm(纬度,经度),在那里,如果你想X,Y,你必须告诉MATLAB的utmzone。否则只会给你X(这是我的前手获得)。
EDU >> [X,Y,utmzone] = deg2utm(38.130587,-99.081752)
X = 4.9284e + 05
Y = 4.2203e + 06
utmzone = 14号第

克瓦希

你好。
我不能确定这是否是一个问题,或者没有。
如果我输入的情况如下:
[X,Y] = deg2utm([5153.7870,5153.7870],[00425.8690,00425.8685])
我想到的是,X输出两个cordinates的samme,那我只有0.58米的y一diferense,在X的性差异怎么过是1M左右,并在约22,5M年。有什么想法吗 ?

插口

非常感谢你。

[R纳瓦兹

亨利:

我已经转换列1和2,deg2utm工作完全正常。纬度/多头是从UTM区域16到区域14(从顶部到底部)。需要注意的是东向突然当你从一个更高的UTM带号转移到一个较低的增加。没有在拉特太大的变化,使区北距遗体从字母Q列3和4已经错误的值转换。

·萨乌尔

亨利

我有问题转换第一和第二列。第三和第四列是正确的转换值..任何帮助吗?

18.9000000000000 -85.6000000000000 1016636.08476000 2097349.08510000
19.1000000000000 -86.2000000000000 952730.286652000 2117881.16418000
19.3000000000000 -86.7000000000000 899537.751857000 2138832.87892000
19.5000000000000 -87.2000000000000 846493.267934000 2159917.67197000
19.6000000000000 -87.5000000000000 814775.913438000 2170418.08636000
19.8000000000000 -87.9000000000000 772442.462010000 2191882.52618000
20.3000000000000 -88.8000000000000 677544.995001000 2246042.98172000
20.5000000000000 -89.8000000000000 573005.667765000 2267422.61128000
20.5000000000000 -91.0000000000000 447853.577293000 2267346.10988000
20.3000000000000 -91.7000000000000 374681.174733000 2245584.33154000
20.1000000000000 -92.2000000000000 322228.063533000 2223898.57802000
19.8000000000000 -93.2000000000000 217073.073883000 2192046.90591000
19.2000000000000 -94.1000000000000 121283.019710000 2127298.41915000
18.6000000000000 -94.9000000000000 35345.9851048000 2062679.39657000
17.9000000000000 -95.6000000000000 -40894.3144760000 1986930.91879000
17.2000000000000 -96.4000000000000 -128393.538814000 1911652.44510000
16.9000000000000 -97.0000000000000 -193630.694790000 1880339.46191000

谢谢!

ARG,对不起我的错,它没有任何的bug

ARG,对不起我的错,它没有任何的bug

我发现任何错误,在本示例中的第一个点P95正确映射到Google地图,但不同点EP2关于carthesian从GPS坐标70米:

P95 = [15.425789 47.030778];
[P95_Carthesian(1)P95_Carthesian(2)] = deg2utm(P95(2),P95(1));

EP2 = [15.42604688057756 47.03090763127457];

[EP2_Carthesian(1)EP2_Carthesian(2)] = deg2utm(EP2(2),EP2(1));

[R纳瓦兹

安娜

你好!
我有一个关于这个脚本的问题:
我想纬度经度点在北部陆架海(欧洲)转换为具有单位米坐标。所以我想用UTM坐标是最好的解决方案。
然而,该地区是相当大的(千公里X千公里),包含不同的区域。所以转换后,我的观点是不正确的顺序了。所以,要么是根本不可能有不同区域的点在一个数据库或脚本,使一些错误。
有人可以帮我这个问题?
谢谢。安娜

ËBobane

我有我的纬度/经度坐标的度,分,秒(如在例2)。但是我缺少“dms2deg”和“mat2dms”功能。在此提交的一些工具箱或部分这些。

托尼·吉布

安迪Gardos

优秀的脚本!我不知道你是否会为计算区间的一些意见。我比较了一些经/纬度数据实际X,Y曲线;然而,我发现,我必须用约3.2乘以X和Y valuse从deg2utm衍生匹配的实际值?谢谢!同样,伟大的剧本!

Junseok公园

优秀的!!谢谢。这是适用于韩国。

安东尼·利乌

伟大的东西〜非常感谢你。

菲利普·布隆德尔

很好 !非常感谢你 !

哦kwoun

非常感谢!

更新

1.0.0.0

校正M-lint警告

修正了南半球坐标的问题。现在它工作正常。

更新说明。小幅修正

MATLAB版本兼容性
创建了R14SP3
与任何版本兼容
平台兼容性
视窗 苹果系统 Linux的