1

我有一个使用 FUSION(激光雷达处理)命令执行以下工作流程的脚本:

  1. 将 LiDAR LAS 文件剪辑到多边形边界,为每个多边形创建一个唯一的 LAS 文件
  2. 运行cloudmetrics以基于每个剪辑的 LAS 文件记录点云信息

这是我为完成第 1 步和第 2 步而创建的脚本:

set shapefile=D:\path\to\shapefile.shp
set inlas=D:\path\to\input\folder\containing\las\files
set clippedlas=D:\path\to\clipped\las\files
set outcsv=D:\output\csvfile.csv

dir %inlas%\*.las /b /s > %inlas%\MyLASList.txt

PolyClipData /multifile /shape:1,* %shapefile% %clippedlas%\clipped %inlas%\MyLASList.txt

dir %clippedlas%\*.las /b /s > %clippedlas%\MyLASList2.txt
cloudmetrics %clippedlas%\MyLASList2.txt %outcsv%

.bat如果我通过双击文件将此脚本作为文件运行,它会在polyclipdata命令中创建某种无限循环。但是,如果我在命令行上逐行执行脚本,工作流将执行所需的任务。这里哪里出错了?

4

2 回答 2

1

在命令提示符下制作这个批处理文件。

PathFind.bat

@echo off
echo. 
echo PathFind - Finds the first file in in a path
echo ======== = ===== === ===== ==== == == = ====
echo. 
echo Searching for %1 in %path%
echo. 
set a=%~$PATH:1
If "%a%"=="" (Echo %1 not found) else (echo %1 found at %a%)

然后键入在路径中查找可执行文件的以下行。

pathfind PolyClipData.com
pathfind PolyClipData.bat
pathfind PolyClipData.cmd
pathfind PolyClipData.exe
pathfind PolyClipData.vbs
pathfind PolyClipData.js
pathfind PolyClipData.wsh
pathfind PolyClipData.wsf
pathfind PolyClipData.vbe
pathfind PolyClipData.jse
pathfind PolyClipData.lnk
pathfind PolyClipData.url
pathfind PolyClipData.pif
pathfind PolyClipData.msc

和远射

pathfind PolyClipData

如果什么也没找到,那么您必须在批处理文件运行时对其进行编辑。

于 2014-10-05T06:44:08.610 回答
1

当您运行该文件时,您是否在另一个文件夹中的 Fusion 文件夹中?也许您需要将正确的 FUSION 路径放在批处理文件上,因为需要从 fusion 文件夹运行 Fusion 命令行可执行文件。

尝试放置正确的路径:..\PolyClipData(或 Noodles 指向的路径查找)

于 2014-10-05T15:52:50.310 回答