我有一个代表投影的图像。我将用一个例子来解释这个问题:
在屏幕中,有一条线从一个点 E(100,200) 到另一个点 H (150,100)。A 代表现实世界中距离为 200 厘米的点,而 B 是现实世界中距离为 300 厘米的点。
我想知道的是:
给定通过这两个点的线的一个点,有没有办法计算它应该具有的 z 距离数据?
如果 z 距离不是线性函数而是某个对数函数怎么办?
如果不清楚,问我一切,
干杯
我有一个代表投影的图像。我将用一个例子来解释这个问题:
在屏幕中,有一条线从一个点 E(100,200) 到另一个点 H (150,100)。A 代表现实世界中距离为 200 厘米的点,而 B 是现实世界中距离为 300 厘米的点。
我想知道的是:
给定通过这两个点的线的一个点,有没有办法计算它应该具有的 z 距离数据?
如果 z 距离不是线性函数而是某个对数函数怎么办?
如果不清楚,问我一切,
干杯
我认为你得到的是透视正确插值。如果您知道 E 处的深度和 H 处的深度,并且 B 位于连接这两个点的线上(在图像中),则求解 B 处的深度:
1/Zb = s * 1/Ze + (1-s) * 1/Zh
其中 s 是屏幕空间中沿线的归一化距离/插值参数(介于 0 和 1 之间),意味着B = s * E + (1-s) * H
使用齐次坐标,可以在屏幕空间中线性插值(用于深度和纹理):http ://www.cs.unc.edu/~olano/papers/2dh-tri/