文件交换

图像缩略图

utm2deg

1.0.0.0版(2.75 KB)通过 拉斐尔·帕拉西奥斯
功能到UTM坐标转换成纬度/经度矢量的转换向量(WGS84)

78个下载

更新2006年8月17日

查看许可证

该功能是基于由加布里埃尔·鲁伊斯·马丁内斯UTMIP.m功能,但不是提供GUI它的坐标矢量作品。

[纬度,经度] = utm2deg(X,Y,utmzone)

%实施例1:
%×= [458731;407653;239027;230253;343898;362850];
%Y = [4462881;5126290;4163083;3171843;4302285;2772478];
%utmzone = [ '30 T';'32 T';'11 S';'28 R';'15 S';'51 R'];
%[纬度,经度] = utm2deg(X,Y,utmzone);
%fprintf中( '%11.6f',LAT)
%40.315430 46.283902 37.577834 28.645647 38.855552 25.061780
%fprintf中( '%11.6f',LON)
%-3.485713 7.801235 -119.955246 -17.759537 -94.799019 121.640266

%示例2:如果您需要在度,分,秒纬度/经度坐标
%[纬度,经度] = utm2deg(X,Y,utmzone);
%LatDMS = dms2mat(deg2dms(LAT))
%LatDMS =
%40.00 18.00 55.55
%46.00 17.00 2.01
%37.00 34.00 40.17
%28.00 38.00 44.33
%38.00 51.00 19.96
%25.00 3.00 42.41
%LonDMS = dms2mat(deg2dms(经度))
%LonDMS =
%-3.00 29.00 8.61
%7.00 48.00 4.40
%-119.00 57.00 18.93
%-17.00 45.00 34.33
%-94.00 47.00 56.47
%121.00 38.00 24.96

引用作为

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

评论和评分(32

碧玉布朗

这个函数输出错误的坐标时convertig从UTM到纬度经度北半球

阿里Soban

但它在我的MATLAB版本2017A失踪。我找不到任何的功能,包括deg2utm和utm2deg。好心的帮助。从工具箱中我可以得到这些安装???

使用注意:此代码需要积极的区域值,如果在负面区域值传递它不会返回正确的结果。

斯蒂芬妮

这其中并没有为我工作。有这一项上的文件交换以及:utm2ll。它的工作,并很容易使用(特别是向量和矩阵)。

感谢这个.m文件!

我想:在帮助有用的功能和很好的解释

我不喜欢什么:只有一个小评论,输入值必须为浮点格式,不接受双打(因为“导向”功能不接受它们)。尽管如此,我认为这是一个伟大的功能。

这是一个伟大的和方便的代码。我是来自南半球和使用的代码时,我得到了错误的纬度和龙。我换成线80什么克里斯汀干的,现在我得到正确的答案。非常感谢

插口

非常感谢。

[R纳瓦兹

克里斯汀是没有错的线80。

它只是检查给定的北向是从北部或南半球。在S是用于南半球,和随后将被用来确定纬度。

脚本仅确定多少高于或低于给定的点是从赤道。对于北半球,北距给出了这样的措施。对于南半球,您可以通过subtrating北距找到它 - 10000000。注意,在UTM的南半球赤道给出的10000000,北向。

我的意见是不完整的......我用替换线80固定我的版本:

如果和(utmzone(I,4)> 'M',utmzone(I,4)lessthan'R')

我同意卡洛斯·卡斯蒂略,上线80没有选择它去“S”。如果utmzone是N或S,它总是默认为赫米斯=“N”;所以我在版本修正了这个用替换这一行:
如果和(utmzone(I,4)> 'M',utmzone(I,4)< 'R')

否则,一个非常有用的脚本!谢谢。

[R纳瓦兹

丹尼尔......你可以看加布里埃尔·鲁伊斯·马丁内斯UTMIP.m功能的细节。

看来你只需要给出不同的参数NAD27和休息的脚本保持不变。

丹尼尔

有一个简单的办法,我可以将此脚本改为输出NAD27,而不是WGS94数据,或者这将是一个完全重写?

好吧,如果是相同的'30 T“的所有值,只需设置一个变量zonn = '30 T”,并将其用于所有转换。

[LAT长] = utm2deg(横坐标北向,zonn)

对于同一UTM带大的数据集,有一个简单的方法来创建“utmzone'变量?(without e.g. having to write utmzone=['30 T'; '30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T';'30 T' (and a 1000 more times '30 T';)...];

志勇

在Matlab中可以将您的矩阵转化为向量....做改造和转换回矩阵。

志勇

优秀的。会更好,如果它是可以做到协调矩阵,而不是仅仅一个矢量变换。

[R纳瓦兹

亲爱的瓦尔·施密特

在计算纬度,功能检查是否字母表示北半球或南风半球。纬度,然后通过查看北距值来计算。半球是北方的X和N.这就是为什么你得到纬度相同的结果。

我想我必须失去了一些东西。我没有在这个代码而抵消的基础上正确的UTM区字符型字段纬度看。例如,我与'17 N“和'17 X”相同的结果。首先是在赤道,第二个是格陵兰岛附近。

尼斯贡献。感谢拉斐尔!

Cegeon

我喜欢它是如何转换的经/纬度到相应的UTM。通过GlobalMapper做同样的事情,并匹配得非常好。

不过,如果你有一个大的结构域(跨越多个UTM区),并希望所有的只是一个特定的UTM区域的数据,即不能做的(只要我可以告诉)。

卡洛斯·卡斯蒂略

我发现,在80行错误。

奥里奥尔巴迪亚

奥伦Fromberg

甜proggy

扎克Moratto

感谢这个!

埃迪·梅休

拉斐尔,
该功能正是我一直在寻找。完善。简单易用。结果是死的,准确的。指令功能的“帮助”一节中很好地解释。尼斯。

埃迪

卡雷尔·卡斯特罗

桑豪润达

简单实用。谢谢!

更新

1.0.0.0

校正M-lint警告

更新说明。小修正代码。

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