【问题标题】:How can i find area of an element in a meshed surface using python如何使用python在网格表面中找到元素的区域
【发布时间】:2013-06-07 11:13:14
【问题描述】:

我是 python 新手。所以请帮助我。我有 X、Y、Z 坐标(3D 数据点),比如说 1000 个点,这在 3d 空间中形成了一个表面。我必须找到它的总表面积。

这可以通过对 X、Y、Z 内的坐标进行网格划分,然后找到每个元素的面积并求和来完成。

我已经在 3d 空间中网格化坐标。

现在我需要找到每个元素的面积。 python中有什么方法可以计算表面积。 有人建议我使用高斯求积法来做。但我知道如何在 python 中使用它来获取该区域。

谁能帮我用python找到表面的面积。

感谢任何帮助。

【问题讨论】:

  • 你说你已经网格化了顶点。您的网格是否由三角形组成?如果是这样,您的实际问题是如何计算三维空间中三角形的面积?
  • 对平面三角形很容易做到;更高阶更难。高斯求积是最好的选择。
  • 好吧,对不起,我不是那么喜欢数学,所以高斯求积超出了我的范围。另一方面,计算三角形的面积相当容易,这就是为什么我问网格是否仅由它们组成。在这种情况下,高斯求积会更好吗?为什么?
  • @blubberdiblub 不,它们不是三角形,它们是正方形。
  • 如果它们实际上是规则的正方形(而不是不规则的四边形),计算它们的面积会更容易。但是正方形不能近似欧几里得空间中的任意闭合曲面。所以要么我的一些假设是错误的,要么你没有规则的欧几里得正方形。

标签: python mesh area gaussian


【解决方案1】:

您可以使用高斯求积来计算面积,方法是进行面积积分或围绕每个元素的周长进行轮廓积分。

也许这会让你开始:

http://www.physics.ohio-state.edu/~ntg/780/readings/hjorth-jensen_notes2009_07.pdf

我不会等着有人把 Python 代码交给你。最好拿一把铲子开始挖掘。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-10
    • 1970-01-01
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 2021-10-22
    相关资源
    最近更新 更多