我正在尝试使用Matlab将命令发送到FWTools以便投影一堆.shp文件。通过Matlab发送命令给FWTools?
我能够从Matlab启动FWTools,但我无法弄清楚如何在没有我的交互的情况下发送命令。
到目前为止,FWTools启动,我的matlab命令窗口和FWTools外壳一样。我键入命令,它会运行,但我想能够在我的.m文件中发送它们。一旦FWTools启动,我的脚本就不会继续下一行代码。
我迄今为止代码:
cmd = 'ogr2ogr -s_srs "EPSG:4326" -t_srs "EPSG:3006" out_sweref99tm.shp in_wgs84.shp';
system('C:\Windows\system32\cmd.exe \K "d:\FWTools2.4.7\setfw.bat" ')
sprintf('%s',cmd) % try to send cmd to matlab command window aka FWTools
我也试图把CMD到我的系统调用,但因为它看来,我想以后调用FWTools具有超长字符串,返回一个错误:(
cmd = 'ogr2ogr -s_srs "EPSG:4326" -t_srs "EPSG:3006" out_sweref99tm.shp in_wgs84.shp';
system(['C:\Windows\system32\cmd.exe \K "d:\FWTools2.4.7\setfw.bat" ',cmd])
我使用FWTools的原因是,我从WGS84投射到SWEREF99TM和(从我的理解),其不容易通过Matlab的映射工具箱最终投射。请纠正我,如果我错了,因为我很想把它保存到Matlab。
如果可能的话,我想留在Matlab,而不是移动到Python。
谢谢。 Norris