问题标签 [polyhedra]

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.

0 投票
2 回答
335 浏览

python - 如何在多面体/多面体中找到整数点(坐标)?

我正在使用 Python,但我不介意更改语言。我从我的研究中得到的只是计算一个区域内(晶格)点数量的工具,给出了包围它的平面的方程。其他工具用于优化多面体内部的给定函数(线性规划)。

单独找到格点怎么样?例如,一个函数

另外,我正在寻找可以在多变量场景中工作的东西(x、y、z、...的约束)。

我目前正在尝试使用ppl解决这个问题。

0 投票
1 回答
175 浏览

c++ - Parma 多面体库:顶点枚举和浮点运算

我正在使用 Parma Polyhedra Library ( PPL ) 对给定的多面体进行顶点枚举。此处已对此进行了讨论。但是,我无法弄清楚如何在计算中使用有理数而不是整数。

下面的代码生成一条线段 [0.3,3.7](一维凸多面体),PPL 返回两个整数 {0,3},但我想要有理数 {0.3,3.7}。我如何建议 PPL 使用有理数(浮点运算)?

0 投票
1 回答
105 浏览

c - 查找给定多面体的顶点

我正在寻找一个可以返回多面体顶点的 C 库。

0 投票
0 回答
86 浏览

sage - 为什么我在 sage 中将 V 表示转换为 H 表示时获得了大量的数字?

我有一组顶点,我想找到它们的 H 表示。我用圣人来做到这一点,但我在不等式中得到了奇怪的数字!这是我的代码:

这是输出的一部分:

0 投票
1 回答
271 浏览

fortran - 计算任意六面体每个面的表面积和法线

我试图找出立方体每个面的表面积和相应的向外单位法线。此操作是在有限元网格上完成的,因此我使用 shape(basis) 函数将立方体的每个表面转换为等参数形式,然后尝试提取面积和法线。

这是代码:

计算局部雅可比和法线的子程序是:

从这个子程序获得局部高斯点:

每个表面的面积应该是 1 个单位,在这种情况下,但此代码不会返回。法线也不正确。输出是

注:一。这可能永远不是立方体,它可以是任何不规则的六面体,因此面积不会总是相等,因此我们需要计算它们中的每一个。湾。面可能沿着不同的方向定向,因此等参数变换是必要的。

这是解决这个问题的正确方法吗?如果有人能帮我解决这个问题,我会很高兴。我还尝试使用每个面的对角线向量积来计算面积和单位法线,但是当结构不规则时它们不起作用。这是不规则六面体1的示例图片。一个普通的 rube 大致立方体看起来像这样。2

0 投票
1 回答
432 浏览

matlab - 在 MATLAB 上查找矩阵的 m 线性独立列

让我们有一个线性系统 Ax<= b。为了找到这个多面体集合的一个顶点,我们需要选择 A 的 m 个线性独立的列,并用相应的变量求解系统。如何使用 MATLAB 生成所有m 线性无关列?然后我会找到我拥有的多面体的所有顶点。

我能想到的是:生成所有子集的 (n, m) 组合。逐一检查排名。每当等级为 =m 时,请采用这些解决方案,因为它们具有完整的 m 等级。有没有更有效的方法?

0 投票
1 回答
67 浏览

mesh - 确定非凸多面体的凹度

假设有一个非凸的 3D 多面体P,表示为网格。确定所有凹面的集合的最佳算法是什么?

我认为的第一个(可能是微不足道的)答案可能是计算多面体P的凸包C,然后将不合理的差异C - P划分为连通分量。我能走在正确的方向吗?如果是,您如何计算网格之间的“差异”?是否有一些 CGAL 函数可用于“减去”网格并获取连接的组件。

0 投票
1 回答
241 浏览

visualization - 将 Nef 多面体保存为 Polyhedron_3 或 Surface_mesh 会给出不同的结果

我想将 Nef 多面体保存到 OFF 文件中以进行可视化。正如CGAL Nef 多面体用户手册中所写(参见第 5.4 和 5.5 节),Nef 多面体可以转换为Polyhedron_3Surface_mesh

但是,我注意到当转换为这些结构然后将其保存到 OFF 文件时,结果是不同的。

在这里,我报告了一个最小示例的代码:

以及两个文件的可视化截图:另存为 Polyhedron_3另存为 Surface_mesh。如您所见,似乎缺少一些面孔。

我的问题是:“为什么显示的结果不同?”

0 投票
0 回答
385 浏览

r - 从 R 中的 x、y、z 散射数据绘制 3D 表面

我有一个坐标数据框,(x,y,z)其中函数取值为 1,所有其他坐标都设置为 0。这是一个简化的示例数据集,类似于我正在使用的数据集:

从下面的散点图中可以看出,这些点定义了一个立方体:

散点图

我想绘制包围这个立方体的表面,但我不知道该怎么做(请注意,在我的数据中,形状更复杂,没有明确的函数将 z 定义为 x 和 y 的函数,但仍然定义一个多面体)。我尝试使用plot_ly各种选项,surface3d(包括R: Plotting a 3D surface from x, y, z和 StackOverflow 建议的许多其他选项,但我无法绘制完整的立方体。任何建议将不胜感激。

0 投票
0 回答
58 浏览

postgresql - PostGIS 边界点云到多面体

我有一个限定真正 3D 对象的点云,有没有办法从这个非结构化点云变为多面体?我需要先网格化/三角化吗?

有谁知道工作流程和任何功能来做到这一点?