图片缩略图

read_kml

版本2.0.0.0 (5.98 KB) 艾米·法里斯
读取谷歌Earth .kml文件到Matlab
4.2
6评级

55下载

更新2016年3月31日

视图版本历史

查看许可协议

打开谷歌Earth kml文件,读取坐标(x,y,z)到Matlab。

引用作为

艾米·法里斯(2021)。read_kml(//www.tatmou.com/matlabcentral/fileexchange/13026-read_kml), MATLAB中央文件交换。检索

意见及评分(9

Marc主持人

工作像一个冠军谷歌地球导出路径。kml文件。谢谢你!

炒饭

从下面的代码片段中添加最后3行/ final“else”语句,以防第一个或最后一个单元格都不是空的。
——>否则“未定义函数或变量‘D’”。

%有时C中的第一个和/或最后一个元素是空的,这会导致问题
len =大小(C, 2);
if isempty(C{end}) && isempty(C{end})
d = c(2:len-1);
&& ~isempty(C{end})
D = C(2:结束);
elseif isempty(C{end}) && ~isempty(C{1})
D = C (1: len-1);
其他的
D = C;
结束

•迪奥戈科斯塔

乔恩

我必须调整它到我的kml文件,只包含纬度/长(没有z坐标),我优化了最后一步,但它完成了工作!

凯尔斯宾塞

如果你把你的谷歌地球pro转换成UTM坐标,这仍然可以工作吗?

若昂

很好,但是kml文档如果超过1000个点就会破坏坐标。
在这个函数中,你只需要选择前1000个点。
也许用另一个if,你可以检查是否有第二个坐标块。

谢谢

Erdal Bizkevelci.

埃文·阿提斯动物园

测试出来。

马尔科姆·伍德

不错的功能。我认为您可以通过使用"xmlread"和W3C xml处理类使其更健壮地处理不正确的空格,例如:
>> doc = xmlread(fileName);
>> c = doc.getElementsByTagName('坐标').item(0);
>> coord_str = c.getChildNodes().item(0).getData();
等。

MATLAB版本兼容性
创建R2006b
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区可以如何帮助您!

开始狩猎!