【问题标题】:Writing Lon,Lat coordinates to a shapefile in Matlab with projection用投影将 Lon,Lat 坐标写入 Matlab 中的 shapefile
【发布时间】:2011-07-01 16:00:12
【问题描述】:

我有一个经度点和纬度点列表,这些点在地图上绘制了一个对象随时间移动的情况;它有点像一条弯曲的线。我正在使用 Matlab 生成这些点,并希望将它们导出到折线 shapefile 中以加载到 ArcGIS 中。

在查看了 mathworks 网站上的 this 示例后,我能够创建一个线 geostruct 对象:

[Tracks(1:length(myLon)-1).Geometry] = deal('Line');
trackType = 'gc';
[Tracks.Type] = deal(trackType);
for i = 1:(length(myLon)-1)
    [Tracks(i).Lon Tracks(i).Lat] = track2(trackType, myLon(i, 1), myLat(i, 1), myLon(i+1, 1), myLat(i+1, 1));
end

shapewrite(Tracks, 'path_line');

这通常可以正常工作,但 Geostruct 不包含任何类型的投影,尽管文档声称 Mapstruct 包含。不幸的是,我没有看到任何关于如何创建 Mapstruct 的示例或函数。有人知道我会怎么做吗?

此外,我尝试使用 mathworks 示例创建点 Geostruct 而不是线,但它不会生成 .dbf 文件,仅生成 .shp 和 .shx 文件。对此有什么解释吗?感谢您的任何建议!

【问题讨论】:

    标签: matlab arcgis


    【解决方案1】:

    您需要使用 arcgis 中的“定义投影”工具来定义导入的折线的投影。这应该会创建一个相应的 .prj 文件。

    【讨论】:

      【解决方案2】:

      除了要创建的 .dbf 文件的 lat 和 lon 以及几何值之外,geostruct 中必须至少有一个“属性”

      【讨论】:

        猜你喜欢
        • 2021-12-14
        • 2020-10-02
        • 2017-07-03
        • 2010-11-12
        • 2018-12-10
        • 2017-12-31
        • 2019-01-07
        • 2011-03-31
        • 1970-01-01
        相关资源
        最近更新 更多