我有以下(伪代码):
#This is the point I want to check for coplanar
pointToCheck
#These 3 make the triangle I am using to check pointToCheck against
pointB
pointC
pointD
#Equation
AB = pointB - pointToCheck
AC = pointC - pointToCheck
AD = pointD - pointToCheck
result = dot(AB, cross(AC, AD))
Currenly我知道如果结果为0那么它们是共面的但是我需要更灵活地说:如果结果是0 + - 它们是共面的。
一些好人可以帮助我吗?
谢谢! :)
编辑:
也许我应该问:是否有可能做一个检查以确定共面性并获得一个角度作为回报?
例如: 点A,B,C,D
你正在检查点A对三角形BCD并发现它不是共面的,但你从公式得到的是一个角度,它可以准确地(或几乎)告诉你离点的距离。
答案 0 :(得分:0)
在一般情况下,您可以找到平面的方程并获得距离。
但你可以使用很好的近似值:似乎你计算三重乘积V和| V |的绝对值对应于四面体ABCD的体积(具有一些系数,如1/6)。
所以你可以将这个体积除以三角形BCD的面积(BC和CD的矢量积的大小)并得到一些高度(和平面距离)的近似值