如何计算相机的z距离,以便在3D空间中以100%的原始比例查看图像

sco*_*ttc 4 math 3d linear-algebra three.js

如何计算距离3D空间中的物体(在这种情况下为图像)的相机距离,使得图像处于其原始像素宽度.

考虑到相机的纵横比,fov以及图像的原始宽度/高度(以像素为单位),我是否可以认为这是可能的?

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

感谢任何能够帮助或引导我朝着正确方向前进的人!

sco*_*ttc 5

感谢大家的所有投入!

在做了一些挖掘,然后弄清楚这一切是如何适应我试图用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) );
Run Code Online (Sandbox Code Playgroud)

我试图找出哪一个标记为答案,但我将所有这些组合成这个解决方案.