小编Ger*_*nez的帖子

相交3D网格python

我刚开始使用面向有限元分析的3D网格。我想在类似立方体的矩阵中建模材料(任何形状,但主要对球体和椭球体感兴趣)的夹杂物。这些内含物不应彼此重合。

因此,我在考虑为python使用某种程序包,该程序包可以绘制原始对象,查找它们的交集(如果存在)并导出几何体(或对其进行网格划分并导出)。对于球体,我正在编写自己的解决方案,但我认为将其扩展为除球体以外的其他形状将非常困难。

在寻找合适的库/模块几天后,我无法决定应该使用哪个库/模块。

我想使用python作为主要语言,因为它很简单,开放源代码,我已经知道了一点。因此检查了此链接: python中好的几何库?

但:

  • SymPy。似乎仅适用于2D对象。
  • 吡尤利德。在其Google代码页中看起来已停产。
  • CGAL。似乎是最先进的,但我找不到它是否相交。
  • 几何简单。也已停产,我相信它不能处理3D对象。
  • pythonocc。缺少文档是这里的重要问题。
  • 打开网格。看来是个不错的选择,但我看不出它是否有交叉点。

我可能会缺少某些功能或库。对不起

如果确实有必要且有用,我可以尝试使用C ++,它似乎有更多的几何库,如此此处此处所述。另外,我想我应该提到我主要在Windows 10上工作,而我对Linux的经验很少,但是我可以挑战自己。

总结一下我的问题:python中是否有任何好的库(如果可能)可以找到3D对象之间的交集?我是否缺少我应该知道的功能或库?我会很高兴向正确的方向提出任何建议。

提前非常感谢!

python primitive intersection mesh

6
推荐指数
1
解决办法
522
查看次数

检测 Gmsh 中的交叉点

我正在考虑使用 gmsh 来替代 Ansys 网格划分器(避免 Workbench/APDL 的网格文件类型不兼容)。

我想实现一种算法来在立方体中引入球体(稍后它将是任何类型的体积)。它们不应相互接触,因此我需要检查我要介绍的卷是否与我之前介绍的任何卷相交。

理想情况下,最好有一个检查边界的命令。我看到有一些命令,例如Boundary,PointsOf和 ,CombinedBoundary它似乎检索边界上的实体。但我不确定它们是如何工作的(文档没有解释没有边界时会发生什么)。我尝试在 GUI 中使用这些命令,但找不到它们。

其他选项(但速度较慢)是尝试交集命令(不删除任何原始卷)并检查交集后有多少卷。如果比以前多了,就有交集。但我对这个解决方案不太满意。无论如何,我需要能够计算前后的卷数,我在 gmsh 文档中没有看到类似的内容。

所以,我的问题是:是否有可能在实际执行交叉之前检测 gmsh 中的交叉?是否可以计算卷数(我想是的)?

非常感谢。亲切的问候,

mesh

1
推荐指数
1
解决办法
2378
查看次数

标签 统计

mesh ×2

intersection ×1

primitive ×1

python ×1