如果您在 3D 空间中有一个等边三角形,其中所有边的长度均为 1,则有两个点可用于形成四面体。一个漂浮在三角形前面,一个漂浮在三角形后面。给定三个已知顶点的坐标,您将如何计算可能的第四个顶点中的任何一个?
如果您能展示如何使用 Processing vector class definition 进行操作,我将不胜感激
最佳答案
平均你的三个点得到三角形的中心:
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
关于algorithm - 给定四面体上的三个点,找到第 4 个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4372556/