已知物体垂直高度、仰角俯角,能否精准计算水平距离?
精准计算观测者到物体的水平距离
当然可以精准计算,完全不需要近似方法!让我给你拆解一下这个几何问题的推导过程:
几何模型拆解
我们可以把整个场景分解为两个共享水平边的直角三角形:
- 第一个三角形:由观测者的眼睛、物体顶部,以及观测者眼睛在物体竖直线上的水平投影点组成。这里水平距离x是邻边,物体顶部到观测者眼睛水平线的垂直高度为
h₁,根据仰角的定义:tan(a) = h₁ / x→h₁ = x * tan(a) - 第二个三角形:由观测者的眼睛、物体底部,以及同一个水平投影点组成。物体底部到观测者眼睛水平线的垂直高度为
h₂,根据俯角的定义:tan(b) = h₂ / x→h₂ = x * tan(b)
推导最终公式
物体的总垂直高度y等于h₁与h₂之和:y = h₁ + h₂
把两个三角形的高度表达式代入上式:y = x*tan(a) + x*tan(b)
提取公因子x后整理:y = x*(tan(a) + tan(b))
最后解出水平距离x:x = y / (tan(a) + tan(b))
结论
这个公式是完全精准的,只要你能准确获取物体高度y、仰角a和俯角b的数值,就能直接算出精确的水平距离x——只要满足常规的几何前提:观测者眼睛视为点、物体垂直于水平面,且所有角度测量在同一竖直平面内。
内容的提问来源于stack exchange,提问作者Magnus




