mesh - 如何撤消 gmsh 中的操作
解决方案
GMSH 不是与其他工具非常相似的 CAD 工具。它提供了一个图形用户界面;但是,并非所有操作都可以通过它完成,即使是可以完成的操作,有时使用一些编码更容易完成。
GMSH 以 GEO 文件格式存储您的所有操作和数据。比如说,您使用 GUI 在它们之间添加了两个点和一条线。后台的 GMSH 将创建以下 GEO 文件:
//+
Point(1) = {-0.1, 0.6, 0, 1.0};
//+
Point(2) = {-0.2, 1.5, 0, 1.0};
//+
Line(1) = {2, 1};
其中//+
(GEO 中的注释语法)分隔各个操作。
- 您可以通过以下方式在文本编辑器中打开此文件(您当前在 GMSH 中使用的文件)
Modules -> Geometry -> Edit Script
:. - 然后,删除在两点之间创建线的最后一条线。
- 将文件保存在文本编辑器中。
- 使用重新加载 GMSH 中的文件
Modules -> Geometry -> Reload Script
还有一种方法可以显式删除一行:Modules -> Geometry -> Delete
. 选择您要删除的行并按下e
以完成删除(按照窗口顶部的提示进行操作)。然而,这并不是正式的“UNDO”。这是执行“UNDO”的“DO”。
虽然乍一看这看起来很不方便(我同意你的观点,一个专门的菜单UNDO
按钮会很有用),但 GEO 脚本语言在创建所需的几何图形方面提供了很大的灵活性。请参阅格式说明以熟悉它。
虽然我建议转向使用 GEO 文件而不是提供的 GUI 做更多的事情有点超出了问题的范围,但与 UNDO 的斗争突出了它。
推荐阅读
- google-cloud-platform - 无法 ping 位于同一 VPC 中的不同子网中的虚拟机
- c++ - 为什么我的断言不会引发错误?
- c++ - 为什么 MSVC 和 GCC 在 vtable 中以不同方式放置覆盖的纯虚函数?
- unix - Bash Unix:Tee 和 PID
- python-3.x - django 模型在每次迁移时都会收到 Alter Field 警报
- flutter - Get.to(MyPage()) - 如何删除所有以前的路由 - Flutter GetX
- typescript - 减速器类功能中的打字稿类型问题
- android - 如何使用提供者值更新其他页面?
- mysql - 返回子查询中的最后一条记录 - MySQL
- flutter - 文本未显示我发送给它的变量