c# - 求三角形中一点的 Z 值

标签 c# math

<分区>

我查看了堆栈溢出以尝试找到解决方案,发现了一些确实有帮助的东西,但仍然不太确定如何继续解决我的问题,或者我只是遗漏了一些非常明显的东西!

如果我有 3 个点定义一个三角形,每个点都有一个 XYZ,然后我有一个位于三角形内的点 P,我只有点 P 的 X 和 Y,我该怎么做求P点的Z值?

我看过三角测量和重心坐标之类的东西,但我不太确定它们是否适合解决方案。

我正尝试在 C# 中实现它,如果需要可以提供更多示例

请提供任何帮助!

最佳答案

你追求的公式是

z = (z3(x-x1)(y-y2) + z1(x-x2)(y-y3) + z2(x-x3)(y-y1) - z2(x-x1)(y-y3) - z3(x-x2)(y-y1) - z1(x-x3)(y-y2))
  / (  (x-x1)(y-y2) +   (x-x2)(y-y3) +   (x-x3)(y-y1) -   (x-x1)(y-y3) -   (x-x2)(y-y1) -   (x-x3)(y-y2))

我觉得。

关于c# - 求三角形中一点的 Z 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13916387/

相关文章:

c# - WCF 服务命名空间冲突,全部在同一个解决方案中

C# 语音识别

math - 如何找到平行六面体的 4d 模拟的超体积?

c - 无符号整数运算问题

c# - Entity Framework 4 - AddObject 与 Attach

c# - 为什么互锁这么慢

c# - 在 Visual Studio 中调试时向后拖动指令指针

math - 如何计算两个 3d 圆上的一对最近点?

python - 如何计算每个帖子的 xyz 位置和时间差的多边定位?

JavaScript - 如何在显示为正方形/矩阵的元素线性数组中按键查找元素的 x,y 位置?