如何计算与 3D 空间中的对象(在这种情况下为图像)的相机距离,以使图像处于其原始像素宽度。

考虑到相机的纵横比、fov 和图像的原始宽度/高度(以像素为单位),我是否正确地假设这是可能的?

(如果相关,我在这个特定实例中使用 THREE.js)。

感谢任何可以帮助或引导我走向正确方向的人!

最佳答案

感谢大家的所有投入!

在进行了一些挖掘,然后弄清楚这一切如何适合我试图用 THREE.js 解决的确切问题后,这是我在 JavaScript 中想出的答案,作为以原始比例显示事物的目标 Z 距离:

var vFOV = this.camera.fov * (Math.PI / 180), // convert VERTICAL fov to radians

var targetZ = window.innerHeight / (2 * Math.tan(vFOV / 2) );

我试图找出将哪个标记为答案,但我将所有这些都组合到了这个解决方案中。

10-08 02:34