zoukankan      html  css  js  c++  java
  • 一起复习几何(2)

     二维空间


    用(x,y)表示。其中(x,y)定义在xy平面上且x,y轴互相垂直。当然我们也可以使用x、y周不垂直的坐标系统, 那复杂度将大大地增加。

    直线
    在xy平面上,直线方程如下:
    Ax + By + C = 0
    单位化后可表示为:
    x + (B/A)y + C/A = 0
    或者表示为斜距式:
    y = mx + b
    其中,斜率为m = -A/B, 截距为b = -C
    问题
    1.原点到直线的距离:
    d = |C|/((A^2 + B^2)^(1/2))
    2. 平行和垂直关系
    Ax + By + C = 0
    Ex + Fy + G = 0
    平行则斜率相同,即 -A/B = -E/F => AF = BE
    垂直则斜率之积为-1,即 AE = -BF

    三维空间

    用(x,y,z)表示。三个轴互相正交。

    向量
    向量有两种:位置向量,方向向量
    位置向量表示点的位置信息,也就是说点即位置向量。用大写粗体表示A
    空间向量表示方向信息。用小写粗体表示,如a
    概念
    1.向量的长度
    |a|
    2.单位向量
    a/|a|
    3. 点积
    a.b = |a|.|b|cos(t),其中t为a、b之间的夹角。
    若a.b = 0, 则 t = 90度, 即a与b正交
    若 a.b = |a|.|b|,则 t = 0度,即a、b同向
    若a.b = -|a|.|b|,则 t = -180度,即a、b反向
    4.叉乘
    a × b = < a2b3 - a3b2, -(a1b3 - a3b1), a1b2 - a2b1 > = c
    |c| = |a|.|b|sin(t),
    其中,c与a,b都正交(方向遵循右手法则),t为a、b的夹角

    直线
    三维空间中的无法用一个方程来表示直线,但可以看成是两个平面的相交线。有了位置向量和方向向量后,可以这些定义直线L:
    X = B + td
    X为直线上的任意一点,通常d为单位向量

    平面
    平面方程为:
    Ax + By + Cz + D = 0
    当然,平面也可以表示为向量形式:
    (X-B).n = 0
    其中X是平面上任一点,B为平面上的已知点,n为平面发向量
    问题
    1. 原点到面的距离
    d = |D|/((A^2 + B^2 + C^2)^(1/2))
    2. 倾斜度(gradient)
    用平面的法向量表示,即<A,B,C>
    3.线与平面交点
    直线:X = B + td
    平面:(X-B).n = 0
    带入X,求得:
    t = (B-A).n / d.n
    注意,如果d.n = 0, 说明要么直线或与平面平行,或在平面上。
  • 相关阅读:
    分词器下载地址
    solr 查询方式
    solr 到 lucene
    Solr 安装与使用 Centos7
    线性表-串:KMP模式匹配算法
    金山——弱智的翻译程序
    FL2440移植Linux2.6.33.7内核
    FL2440移植u-boot2011.09
    【转】C/C++除法实现方式及负数取模详解
    循环缓冲类
  • 原文地址:https://www.cnblogs.com/aiwz/p/6333134.html
Copyright © 2011-2022 走看看