如果在3D空间中有等边三角形,其中所有边的长度均为1,则可以使用两个点来形成四面体。一个漂浮在三角形前面,一个漂浮在它后面。给定三个已知顶点的坐标,您将如何计算可能的第四个顶点?
展示如何做到这一点,我将非常感激答案 0 :(得分:5)
平均三个点以获得三角形的中心:
center = (a + b + c) / 3
通过取两个边的叉积来计算法向量:
normal = (c - a) x (b - a)
标准化法线向量(使其为单位长度):
unit_normal = normal / |normal|
按正四面体的高度缩放法线:
scaled_normal = unit_normal * sqrt(2/3)
现在,你的两点是:
top = center + scaled_normal
bottom = center - scaled_normal
答案 1 :(得分:3)
(a + b + c)/3
(三角形的中心)
+/- ((a-b) x (b-c)
(三角形两边的交叉积,因此垂直于两者)
* some constant or other)
(正四面体的高度除以交叉积的长度,长度为1 * 1 * sin(60度)= sqrt(3)/ 2)
这可能会简化。
[编辑:高度为sqrt(2/3),因此常量为2*sqrt(2)
]
[第二次编辑:不在前三个平面内的任何第四个点形成一个四面体。 ITYM a 常规四面体; - )]
答案 2 :(得分:1)
因为3D从未引起我的兴趣,我想我只能提供一种方法来做到这一点,而不是精确的坐标。
位于距离的点 从中心的sqrt(2/3) 三角形和垂直线 到由三角形组成的平面 并包含质心。