问题标签 [pymesh]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
pymesh - pymesh collapse_short_edges 函数使网格为空
我想问一下pymesh问题,不知道是不是bug。当我打电话时
它打印出来如下:
所以在“collapse_short_edges”函数之后,网格不再有任何面或顶点。它发生在我的一些网格上。我们如何解决这个问题?
python - 在 Python 中创建二维非矩形形状的三角形网格
假设我有一组点定义了二维平面中非矩形形状的周长。
我需要一个函数来创建三角形网格,我可以在其中修改三角形单元格的数量并返回每个单元格的 (x,y) 坐标。
谢谢你。
python - 合并两个 3d 对象时删除内部信息
嗨,我目前正在开展一个项目,我们必须组合多个 3d 对象。因此,例如将它们彼此相邻放置,有时它们也会相交。
我正在寻找一种算法/库或任何可以将这个新合并对象减少为仅由外表面组成的想法。(我们的 3d 对象目前是 .stl 文件,但我们不受此格式的约束)
我们已经尝试将这些对象与 numpy-stl 组合,但似乎这个库没有任何优化可以帮助解决这个问题。我们还尝试使用来自 pymesh 的布尔合并,但这需要非常多的时间来处理详细的对象。
我们希望释放对象内部的所有信息,只保留外部的信息。因此,例如,如果您将这个组合的 3d 对象放入水中,我们只需要会被水触及的面。
我们更喜欢 python,但任何可以在 python 中实现的算法都会让我们前进。
我们感谢每一个答案:)
python - Pymesh 布尔联合内存泄漏
尝试在循环中运行pymesh.boolean函数时出现错误。我有一个循环,里面有 pymesh 网格和布尔联合操作。错误发生在engine.compute_union()的pymesh/boolean.py中并导致MemoryError: std::bad_alloc
从https://hub.docker.com/r/pymesh/pymesh安装 pymesh
提前感谢您的帮助!
python - 如何从存储为 numpy 数组的顶点创建点云文件(.ply)?
我有一些顶点的坐标存储为 NumPy 数组。
xyz_np:
我想将这些顶点保存为点云文件(例如 .ply)并在 Blender 中可视化。
我没有人脸信息。
python - 如何通过计算确定一个点是在 3D 模型内部还是外部
我有一个 3D 模型的 .obj 和 .ply 文件。
我想要做的是阅读这个 3D 模型文件并查看 3D 坐标列表是在 3D 模型空间内部还是外部。例如,如果 3D 模型是一个半径为 1 的球体,则 (0,0,0) 将在内部 ( True
),而 (2,0,0) 将在外部 ( False
)。当然,我使用的 3D 模型并不像球体那么简单。
我想添加一些我考虑使用的方法。由于我使用的是 Python,因此我想到了使用 PyMesh,因为它们的交集功能看起来很有希望。然而,我拥有的坐标列表不是网格文件,而只是向量,所以它似乎不是合适的函数。
我还发现了这种使用光线投射的方法。但是,我需要建议如何使用 PyMesh 或任何其他 Python 工具来做到这一点。
python-3.x - PyMesh 中是否有计算体积的函数?
我正在尝试计算 pymesh 中的交叉点的体积。从 PyMesh 网站上的 MWE https://pymesh.readthedocs.io/en/latest/mesh_boolean.html给出intersection
,我想知道如何计算体积?
我尝试从https://pymesh.readthedocs.io/en/latest/basic.html?highlight=volume#mesh-data-structure访问属性列表,但是我唯一可用的属性是:
PyMesh 是否有能力计算这个交叉点的体积(或任何通用网格)?
python - 为什么 Pymesh 布尔运算在我简单的几何设置中非常慢?
我正在测试 pymesh 中布尔运算的效率,以查看它计算布尔值的速度。但是与libigl 论文相比,我使用默认引擎获得的性能非常慢
0.25 s 计算 8616 个网格的自联合。
我做了一个与一个小的原始盒子相交的纹理网格的实验。纹理有 12 个顶点,原始框有 8 个顶点。谷物的位置刚好在盒子的一张脸的上方。计算这两个对象的交集用了 0.036 秒。
这么简单的计算,为什么需要 0.036 秒?在执行此布尔运算时,将我们的 Libigl pymesh 作为引擎,它是用 C++ 编写的。我是否必须用 C++ 编写代码才能直接使用 Libigl 才能获得类似的性能?
这些结果是在以下环境中产生的:
- 处理器:2.3 GHz 双核 Intel Core i5
- 内存:8 GB 2133 MHz LPDDR3
- 操作系统:Mac OS Catalina 10.15.7
- IDE:Visual Studio 代码、Jupyter Notebook
- Python版本:3.7.5
- Pymesh 版本:pymesh2==0.3
python - Sklearn 和 Pymesh 导入导致冲突
我正在使用 PyMesh 处理 3D 网格。pip install pymesh2
有构建错误。因此,我从官方 github页面的另一个版本安装。我正在使用pymesh2-0.3-cp36-cp36m-linux_x86_64.whl
. 我使用 pip install 安装了 scikit-learn。两者都成功安装在我的系统中。在导入它们时,我发现了一些奇怪的东西。在导入 Pymesh 和 Sklearn 时。Pymesh 正确导入。Sklearn 不是
在导入 Sklearn 和 Pymesh 时。Sklearn 正确导入。Pymesh 不是
似乎这两个包相互冲突!有人可以帮我解决问题和任何可能的解决方案吗?
windows - PyMesh 在 Windows10 上的设置问题和使用 Docker 版本时出错
我想在 Windows 10 PC 上安装 PyMesh,如果可能的话,它应该安装在我们使用的 IDE 随附的解释器的侧包中。
我尝试了运行此处描述的设置的方式 https://pymesh.readthedocs.io/en/latest/installation.html
所以这部分: git clone https://github.com/PyMesh/PyMesh.git cd PyMesh git submodule update --init 没有任何问题。
我不确定在 Windows 上我现在是否可以写 set PYMESH_PATH = path 并且我是否可以在这里使用路径“...\PyMesh\PyMesh”?所以我省略了这部分
我安装了 numpy 和 scipy(已经安装)和鼻子,因为它在 requirements.txt 中提到。所以我的 numpy scipy 和 nose 版本是 numpy 1.19.1 scipy 1.6.0 nose 1.3.7 (与要求相同)
并且只需使用管理员权限运行 setup.py python .\setup.py install 这似乎也可以工作,但我在尝试 python -c "import pymesh; pymesh.test()"
从 PyMesh 文件夹中出现错误,说 ModuleNotFoundError: No module命名为“PyMesh”
或者如果我上一个文件夹做同样的事情 AttributeError: module 'PyMesh' has no attribute 'triangle'
我找到了这个链接ImportError: No module named PyMesh 但我只是不知道我应该在那里输入什么
我尝试使用 pip install pymesh 通过 pip 安装,但 pip Installer 给了我一个不同的库。
所以我尝试了 docker 版本,在 docker 中我尝试了 pymesh.load_mesh 方法和 stl 文件,但得到了 SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXXXX escape
我不知道这是否只是 stl 格式(期望二进制文件获取 ascii,反之亦然) stl 文件本身可以打开,因此不应损坏。
那么有没有不同的方法来安装pymesh?一个轮子会很棒。是否可以将 pymesh 安装到给定解释器的侧包中?其他人是否已经在 Docker 中遇到过同样的错误并且知道这个问题
谢谢您的帮助