找出一个点属于哪个四面体元素

2023-12-06

我有一个 3d 区域的四面体网格。网格由扩展名为 .node 和 .ele 的两个文件定义,其中包含与节点和元素相关的数据(这是 tetgen(3d Delaunay 四面体化程序)的输出文件的格式)。 .node 文件的每一行包含节点编号以及该节点的 x、y、z 坐标。 .ele 文件包含与其四个顶点对应的元素编号和节点编号。现在,给定任何点 (x1,y1,z1),决定该点属于哪个元素的最简单算法是什么?


如果您知道四面体面的方向,则只需计算点 p=(x1,y1,z1) 和四面体每个面形成的四面体的体积。点 p 位于四面体内部当且仅当它相对于每个面都具有正体积时。


CGinC
Snippet from Computational Geometry in C.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

找出一个点属于哪个四面体元素 的相关文章

  • 计算半径为 R、尺寸为 D 的球体内的整数点

    我正在尝试编写一种有效的算法来计算半径为 R 且维度为 D 的球体内的点数 球体始终位于原点 假设我们有一个尺寸为 2 的球体 圆形 半径为 5 我的策略是在第一象限内生成所有可能的点 因此对于上面的示例 我们知道 1 2 在圆中 因此该点
  • n阶贝塞尔曲线?

    我已经成功地实现了二次和三次贝塞尔曲线 它们非常简单 因为我们有一个公式 现在我想使用泛化来表示 n 阶贝塞尔曲线 Where and 我使用位图库来渲染输出 所以这是我的代码 binomialCoef n k factorial n fa
  • 2D 几何库:LGPL 替代 CGAL? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 CGAL 似乎可以满足我需要的一切 并且可以为我即将进行的项目做更多的事情 它可以从弧线段创建多边形并对其运行布尔运算 它已经有了空间排序
  • MATLAB:在子图中绘制/保存网格函数的 X-Y 视图

    正如标题所示 我试图将网格函数的 2 变量切片 例如 作为 jpg 保存为子图 我想使用 m 文件来执行此操作 因为我有很多要生成的图 我已经弄清楚如何在他们自己的图形上绘制视图 但我无法让它们正确地绘制为图形中的子图 为了说明我的意思 以
  • 环境错误:Gmsh 版本必须 >= 2.0

    我是 fipy 的新手 所以如果我问一些应该显而易见的问题 请原谅我的无知 但我无法运行已经存在的 并且在其他机器上工作的 脚本 无法获取EnvironmentError Gmsh version must be gt 2 0 我可能在安装
  • 计算 3D 网格的体积

    我厌倦了计算 3D 物体 立方体 圆柱体 的体积 有人可以帮忙吗 有这个问题吗 问题是 如何计算物体的体积 基于三角形的坐标 我的班级做得不好 有人能帮我吗 提高班级水平 thanks public class Algorithm priv
  • 在matlab中计算闭合曲线(或多边形)的曲率

    考虑以下几点 x 1 34 0 92 0 68 0 25 0 06 0 34 0 49 0 72 0 79 0 94 1 35 0 35 0 54 0 68 0 84 1 20 1 23 1 32 1 34 y 0 30 0 43 0 90
  • 我想用Python从点云生成网格

    我有来自人体不同部位的点云 比如眼睛 我想做一个网格 我尝试使用 Mayavi 和 Delaunay 但没有得到好的网格 云的点完全混乱 我的点云位于 npz 文件中 使用 Mayavi 然后我想将模型保存在 obj 或 stl 文件中 但
  • 寻找凹/凸多边形内的有界矩形

    我正在寻找一种在凹多边形或凸多边形内查找轴对齐矩形的方法 我一直在网上查找 我能找到的最接近的解决方案只适合凸多边形 而不适合凹多边形 例如 在多边形内查找轴对齐的矩形 https stackoverflow com questions 6
  • 如何从kinect fracetrack获取网格?

    如何获取 kinect 面部追踪网格 这是网格 https i stack imgur com aPtJt jpg https i stack imgur com aPtJt jpg 我尝试了多种方法 但无法使其发挥作用 e g http
  • 如何在 Matlab 中计算 3D 网格的投影

    我正在尝试使用 matlab 从不同视图计算 3d 网格的 2d 投影 我现在使用的解决方案是绘制 3D 网格 旋转它并制作屏幕截图 我想知道是否有任何 matlab 内部函数或任何其他解决方案允许我在给定一组顶点和三角形的情况下计算投影而
  • 查找垂直点与直线相交的 x 和 y 坐标[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这是对此的后续问题question https stackoverflow com questions 32606940 how to f
  • 确定形成四边形的顶点顺序

    假设我在 2D 空间中有 4 个顶点 有谁知道一种有效的算法可以给我对应于简单四边形的顶点排序 也就是说 它将标记顶点1 2 3 4这样如果我跟随1 2 2 3 3 4我将绘制一个简单的 即不相交的 四边形 只需提供我可以谷歌搜索的标准算法
  • 如何检索两个 3D 向量之间的角度?

    我是Python新手 我在 3d 空间中有两个向量 我想知道两个向量之间的角度 I tried vec1 x1 y1 z1 vec2 x2 y2 z2 angle np arccos np dot vec1 vec2 np linalg n
  • 如何确定多边形点列表是否按顺时针顺序排列?

    有了一个点列表 如何找到它们是否按顺时针顺序排列 例如 point 0 5 0 point 1 6 4 point 2 4 5 point 3 1 5 point 4 1 0 会说它是逆时针的 或者对某些人来说是逆时针的 对于非凸多边形 例
  • 三次贝塞尔曲线逆 GetPoint 方程:float for Vector <=> Vector for float

    给定结果值和四个点是否可以取回 float t 如果是这样 怎么办 public static Vector3 GetPoint Vector3 p0 Vector3 p1 Vector3 p2 Vector3 p3 float t t M
  • 如何最小化两个子多边形的最大纵横比?

    我想使用直线将凸多边形切成给定面积比的两部分 以使两个子多边形的较大纵横比最小化 目前我的方法包括选择一个随机起点 计算将多边形分割成目标区域的适当终点 然后计算两个纵横比中较大的一个 然后重复这个很多次 直到我足够接近最小值 多边形 A
  • 使用 Voronoi 图查找多边形的中线

    我正在使用概述的基于 Voronoi 图的方法here https stackoverflow com questions 37820629 centerline of a polygonal blob binary image找到根图像的
  • 点集子集的最小周长凸包

    给定平面上的 n 个点 没有 3 个共线 给定数字 k 找到 k 个点的子集 使得 k 个点的凸包在 k 个点的子集的任何凸包中具有最小周长 我可以想到一个简单的方法 运行时间为 O n k k log k 找到大小为 k 的每个子集的凸包
  • 在网格挤出过程中计算 UV 坐标

    我目前正在为平面形状实现网格挤出算法 让我们假设为矩形 当我拉伸这个矩形时 我为 3d 形状创建了四个新边 产生 8 个新三角形 和一个新底部 当我复制所有顶点以使最终的立方体有 24 个顶点时 这种方法效果很好 但我现在想避免这些额外的顶

随机推荐