AB−→− 表示一个从点A到点B的向量。
加法的交换性: a⃗ +b⃗ =b⃗ +a⃗
加法的结合性: (a⃗ +b⃗ )+c⃗ =a⃗ +(b⃗ +c⃗ )
加法恒等式: 0⃗ +a⃗ =a⃗
对于一个实数 k ,有 ka⃗ 的方向与 a⃗ 相同, |ka⃗ |=k|a⃗ |
对于任意一个向量 X⃗ ,存在一个向量 −X⃗ (模相等,方向相反)使得 X⃗ +(−X⃗ )=0
对于实数 r,s ,向量满足:
纯量乘法的结合性: r(sX⃗ )=(rs)X⃗
纯量乘法的分配性: (r+s)X⃗ =rX⃗ +sX⃗
向量加法的分配性: r(X⃗ +Y⃗ )=rX⃗ +rY⃗
对于两个维数相同的点 A(x1,x2,...,xn),B(y1,y2,...,yn),AB−→−=(y1−x1,y2−x2,...,yn−xn)
1°平行四边形法则。
2°对于两个维数相同的向量:它们的加(减)法得出的向量各坐标等于这两个向量各坐标分别相加(减)。
对于向量 a⃗ =(x1,x2,...,xn),|a⃗ |=∑i=1nx2i−−−−−√
对于两个维数为 n 的向量 a⃗ =(x1,x2,...,xn),b⃗ =(y1,y2,...,yn) a⃗ ⋅b⃗ =|a⃗ ||b⃗ |cosθ=∑i=1nxiyi
点积求出的是一个标量。
二维向量 a⃗ =(x1,y1),b⃗ =(x2,y2), a⃗ ×b⃗ =x1y2−x2y1
叉积求出的数值为以 a⃗ ,b⃗ 为邻边的平行四边形的有向面积。常用叉积来计算三角形或平行四边形面积及判断两向量的相对方向(即向左拐或向右拐)。
向量 <x,y> 逆时针旋转 α 角度变成 <x∗cosα−y∗sinα,x∗sinα+y∗cosα>
已知两线段 P1P2,Q1Q2
要求这两线段是否相交。
若两线段相交,则以这两线段为对角线分别作两个矩形,这两个矩形必须相交。这就是快速排斥试验。
若 P1P2 跨立 Q1Q2 ,则矢量 (P1−Q1),(P2−Q1) 位于矢量 (Q2−Q1) 的两侧。即满足 (P1−Q1)×(Q2−Q1)∗(P2−Q1)×(Q2−Q1)<0 。若 (P1−Q1)×(Q2−Q1)∗(P2−Q1)×(Q2−Q1)=0 ,说明 P1或P2 在直线 Q1Q2 上,但因为已通过快速排斥试验,所以这两线段是相交的。故上式可改写成 (P1−Q1)×(Q2−Q1)∗(P2−Q1)×(Q2−Q1)≤0
同理,若 Q1Q2 跨立 P1P2 ,则要满足 (Q1−P1)×(P2−P1)∗(Q2−P1)×(P2−P1)≤0
当 P1P2 跨立 Q1Q2 且 Q1Q2 跨立 P1P2 ,跨立试验成功。
当快速排斥试验与跨立实验都成功时,这两条线段相交。
由相似三角形、定比分点等知识我们可以得出两线段交点公式。套用向量乘法,我们能简便地求出两线段交点。
公式很多,在此不赘述,用得较多的是叉积绝对值的一半。
选取多边形上一个顶点作为三角形的一个固定顶点,每次选取多边形上另外两个相邻顶点作为三角形的另外两个顶点,求三角形面积和。
也可看成每次选取多边形上两个相邻顶点,求前一个顶点与后一个顶点关于原点的有向面积和。证明显然。
一个 n 边形的面积公式:
S=∑i=1n(XiYi+1−Xi+1Yi)2
(顶点按顺时针(或逆时针)排序后第 i 个顶点坐标 (Xi,Yi),Xn+1=X1,Yn+1=Y1 )
平面上 N 个点,用一个最小(周长、面积)的凸多边形包住它们,使每个点落在凸多边形内或凸多边形上。
选择一个 x 坐标(相同情况下 y 坐标)最小的点作为基点,使其他所有点落在第一、四象限上,然后进行极角排序,按逆时针插入其他点,用栈存储凸包上的点,插入时用叉积判断维护栈顶凸性。