微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 AutoCAD Maps 3D 2021 中批量处理多组 *.shp 文件

如何解决在 AutoCAD Maps 3D 2021 中批量处理多组 *.shp 文件

我是批处理文件和 AutoCAD 脚本的新手,所以此时我很好奇我建议的路径是否有意义,或者是否有更好的方法来做到这一点。

基本上我在这个结构中有一组 *.shp 文件

*Parent\SiteA\SiteA.shp
*Parent\SiteA\Shape1.shp
*Parent\SiteA\Shape2.shp
*Parent\SiteB\SiteB.shp
*Parent\SiteB\Shape1.shp
*Parent\SiteB\Shape2.shp

...等,适用于数百个站点。我想要做的是打开一个图形,从站点文件夹加载所有 *.shp 文件,将图形另存为 *.dwg,关闭图形,然后移动到下一个站点文件夹。

我不太关心速度,所以我目前正在考虑这样的事情:

  1. Parent 中的批处理文件寻找 Site#.shp
  2. 找到 Site#.shp 后,批处理文件会将 AutoCAD Maps 打开为空白 *.dwg 并执行脚本
  3. 该脚本是一个 -MAPIMPORT 列表,用于打开 Site#.shp 和任何其他 Shape1.shp 或 Shape2.shp 文件(Shape#.shp 都是已知名称,Site#.shp 更改)。
  4. 导入完成后,*.dwg 将保存在 Site# 文件夹中。
  5. AutoCAD 关闭(可选)
  6. 批处理文件寻找下一个 Site#.shp 文件,重复。

这样的事情让我可以在相应的子目录中找到所有 Site#.shp 文件

FOR /f %%i IN ('dir /b /s "c:\Parent\Site*.shp"') DO echo %%i >> list.txt

但我不确定在我的脚本中在 ACAD 中识别一次 Site# 有多么容易。也许与文件路径有关?

我不是每晚都运行这个或任何东西,所以如果从 ACAD 地图的打开实例中运行它更有意义,我当然可以这样做,也许可以简化步骤 2 和 5。或者,如果有更好的方法解决这个问题,我很感兴趣。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?