zoukankan      html  css  js  c++  java
  • 计算几何初步认识

    一、点。

             点的坐标A(x1, y1),B(x2, y2)

    二、向量。

             向量AB = (x2-x1, y2-y1) = (x3,y3) ,CD = (x4, y4)。

             向量的模|AB| = sqrt(x3*x3 + y3*y3) 即向量的长度。

    三、点积。

            点积的结果为一个数值。

            数值计算方法AB * CD = x3*x4 + y3*y4。

            几何意义AB * CD = |AB| * |CD| * cos(a),a为向量AB逆时针转向CD的角度,0<=a<360,也可以认为是两向量的夹角,0<=a<=180。一般用于求夹角,a = acos( (AB * CD) / (|AB| * |CD|) )。也可:|CD| * cos(a) = AB * CD / |AB|,即向量CD在AB上的投影。

    四、叉积。

            叉积的结果为一个向量。

            AB×CD数值= x3*y4 – x4*y3。

            方向由右手螺旋定则判定。

            几何意义:AB×CD = |AB| * |CD| * sin(a),取绝对值即是以AB和CD为边的平行四边形面积。

    五、线段相交的判定(判定线段AB和线段CD是否相交,属于哪种相交)。

            规范相交:交点只有一个,且不是线段的端点。

    1、充要条件:点A和点B在CD的两侧并且点C和点D在AB的两侧。

    2、如何判断点A在向量CD的左侧还是右侧:CA×CD的数值大于0则左侧,小于0则右侧。于是CA×CD的数值和CB×CD的数值异号,点A和点B在CD的两侧,同理可判断点C和点D是否在AB的两侧(注意,必须严格异号)。

            不规范相交:交点为某个线段的端点,甚至两线段有一段重合。

    1、充要条件,一条线段的一个端点在另一条线段上。即A在CD上或B在CD上或C在AB上或D在AB上。

    2、A在线段CD上的充要条件:

    a)        AC×AD = 0,几何意义,AC和AD组成的平行四边形的面积为0,即A、C、D三点共线。

    b)        A点在CD之间,A.x处于C.x和D.x之间并且A.y处于C.y和D.y之间

  • 相关阅读:
    CentOS/RedHat安装Python3
    Hash校验工具、MD5 SHA1 SHA256命令行工具
    centos如何安装Python3
    iOS之UI--涂鸦画板实例
    iOS之UI--Quartz2D的入门应用-- 重绘下载圆形进度条
    Eclipse导入项目: No projects are found to import
    在MAC平台下使用Eclipse出现了中文乱码
    C语言错误之--初始值(低级错误)
    iOS开发之duplicate symbols for architecture x86_64错误
    C语言的传值与传址调用
  • 原文地址:https://www.cnblogs.com/zhangmingcheng/p/4274961.html
Copyright © 2011-2022 走看看