编辑
我不知道它是否重要,但目标三角形角度可能与源三角形角度不同。这个事实是否使转换非仿射?(我不知道)

我在 3D 空间中有两个三角形。鉴于我知道第一个三角形中点的 (x,y,z) 并且我知道向量 V1,V2,V3。我需要找到点 (x',y',z')。我应该用向量 V1,V2,V3 指向 (x,y,z) 进行什么变换才能得到第二个三角形中的变换点?
感谢帮助 !!!
给定两个凸多边形的顶点,使用 cgal 计算它们相交面积的最简单方法是什么?
我有一些在不同点连接的线。我想绘制这些线的轮廓,我还想处理连接点处的额外线。
我通过偏移中心线然后更改线的起点和终点来处理正常情况。
但是当点彼此靠近时,我无法处理特殊情况。
不幸的是,我的声誉很低,我无法发布图片来更好地解释这一点。
我正在使用 Visual Basic .net 进行编码,并且正在为 Autocad 编写代码,但任何建议对我都非常有用。
我一直在处理 3D 空间(X、Y、Z)中的点,并希望能够计算其中两个点之间的俯仰和偏航。
我目前的代码:
pitch = (float) (1/Math.tan((Y1 - Y2) / (Z1 - Z2)));
yaw = (float) (1/Math.tan((X1 - X2) / (Z1 - Z2)));
Run Code Online (Sandbox Code Playgroud)
其中 X1、X2、Y1、Y2、Z1、Z2 直到运行时都是未知的,此时它们是从两个随机生成的点中收集的。
但出于某种原因,我的结果完全错误,我尝试了许多不同的组合,并在谷歌上搜索了无数东西,但一无所获。
一些限制是:
这是我第一次使用 3D 角度,我读过可以在两个不同的 2D 平面上分别计算俯仰和偏航,就像我的例子一样,但这不起作用。
非常感谢任何帮助。
我的问题的简短描述
我需要为 3D 打印实现从 G1 指令到 G2 和 G3(http://www.cnccookbook.com/CCCNCGCodeArcsG02G03.htm)的GCODE 自动重构。
G1 是直线运动并打印(路径用矢量描述)。
我正在寻找基于给定向量路径的算法来近似圆/弧(特别是它的中点)。请注意,G2 和 G3 无法打印不属于圆的曲线 - 因此并非每个向量路径都可以通过这种方式近似。
我的问题的详细描述
我正在寻找通过圆(弧)来近似部分(或全部)向量路径(可以是正多边形、它的一部分或不规则多边形部分)的方法。但是,让我们首先关注规则多边形。
在图片中,我绘制了这个问题的不同情况。
注意:每个多边形都是由向量构建的(如第 5 点)。

这不是故事的开始……有几个标准:
我发现的解决方案(好的和坏的):
1) 和 5) - 我的简单解决方案
这是最简单的情况。我可以计算共享一个观点的每一侧之间的半径。如果它们具有相同的长度和每个之间的角度相等,我可以计算圆的中点(作为属于垂直中线的点,每边一条中线),我有我需要的一切:起点,终点,中点观点。
但此解决方案仅适用于情况 1 和 5。
当我遇到案例 2,3,4 或不规则多边形的部分时,我真的不知道该怎么办
是否有任何已知方法可以快速有效地确定 3D 点是否位于已知大小的柏拉图体积内?
这对于立方体(六面体)或圆(椭圆体)来说似乎很容易。我似乎无法弄清楚四面体、八面体、十二面体或二十面体。我猜可能可以将形状分解成几个子实体,然后检查每个子实体,但如果可能的话,我想避免使用任何类型的迭代求解器。
我正在尝试实现以下 Bowyer-Watson 算法来实现 Delaunay 三角剖分。
function BowyerWatson (pointList)
// pointList is a set of coordinates defining the points to be triangulated
triangulation := empty triangle mesh data structure
add super-triangle to triangulation // must be large enough to completely contain all the points in pointList
for each point in pointList do // add all the points one at a time to the triangulation
badTriangles := empty set
for each triangle in triangulation do // first find all the triangles that …Run Code Online (Sandbox Code Playgroud) 在构造椭圆向量时,我在 LogCat 中收到此警告消息:
W/OpenGLRenderer: Points are too far apart 4.000000
Run Code Online (Sandbox Code Playgroud)
我有兴趣知道这究竟意味着什么。我注意到在 AOSP 中有一个 drawArc 方法会引发此警告,但是,它并没有明确表示究竟是什么意思。我需要调整我的矢量可绘制对象吗?我是否会从这些警告中看到任何未来的错误或绘制错误?我怎样才能让这些警告消退?
java android opengl-es computational-geometry android-source
我正在尝试在 Java 中实现 Bentley-Ottmann 算法,但一直停留在实际实现处理交点时所需的交换操作(参见:维基百科上的 Bentley-Ottmann )。
如果我正确理解该算法,则有 3 种不同类型的事件点:
(我省略了很多细节,因为它们与这里不太相关)
我使用 aTreeMap作为我的数据结构来存储我的段。我不认为有一个swap操作TreeMaps可以让你只交换两个元素,所以这就是我陷入困境的地方。
设 A 和 B 为平面上的两组点,每组由 n 个点组成。我试图找到一种有效的方法来确定 A 和 B 是否可以被圆盘分开 - 是否存在圆盘 D,使得 A 的所有点都位于 D 内部,而 B 的所有点都位于 D 之外?
还有一个提示:使用提升到三个维度。
任何帮助将不胜感激。