zoukankan      html  css  js  c++  java
  • 点到平面的距离公式

    准备知识

    平面的一般式方程

    Ax +By +Cz + D = 0

    其中n = (A, B, C)是平面的法向量,D是将平面平移到坐标原点所需距离(所以D=0时,平面过原点)

    向量的模(长度)

    给定一个向量V(x, y, z),则|V| = sqrt(x * x + y * y + z * z)

    向量的点积(内积)

    给定两个向量V1(x1, y1, z1)和V2(x2, y2, z2)则他们的内积是

    V1V2 = x1x2 + y1y2 + z1z2

    点到平面的距离

    有了上面的准备知识,则求点到直线的距离不再是难事,有图有真相

    如果法相量是单位向量的话,那么分母为1

    ORGE中的实现

    顺便看一下Ogre中的实现

    Real Plane::getDistance (const Vector3& rkPoint) const
    {
        
    return normal.dotProduct(rkPoint) + d;
    }

    可见Ogre默认法相量为单位向量,且没有对结果取绝对值,根据注释,当点与法相量的方向在同一侧时,结果为正,否则为负。

  • 相关阅读:
    附加:CSS大全
    HTML 三
    HTML 二
    HTML 一
    20150106--SQL事务操作+触发器二
    20150106--SQL事务操作+触发器一
    20141229 mysql基本操作二
    Oracle基础知识
    JDBC事务
    jsp内置/隐式对象(9个)与el表达式
  • 原文地址:https://www.cnblogs.com/graphics/p/1774809.html
Copyright © 2011-2022 走看看