先放两个比较好的博客
模板比较全的:
1.叉积
两个点l(a,b)r(c,d)lr向量等于(c-a,d-b)
两个向量p(x1,y1),q(x2,y2)
- 公式:叉积s=p×q=x1*y2-y1*x2;
if(s>0)说明从p到q逆时针旋转的角度为[0,180),如果相同起点的一堆向量,如果某一个向量和其他任何向量的叉乘s都>0,则这个向量是逆时针旋转的起始向量,
if(s==0)说明p->q旋转180度,两向量共线;
if(s<0)说明从p到q逆时针旋转的角度为(180,360),s都小于0,则代表是顺时针旋转的其实向量。
z这里为什么都是逆时针旋转呢,因为正常三维空间中Z轴是向上的,在叉积的时候,大拇指必须始终是向上的,这就是为什么一直是逆时针,且叉积是有顺序的,p×q= - (q×p);
应用:
找到一个起点,对每个点形成向量,其中选两个向量做叉积,只要某一个向量和其他向量的叉积都是>0或都是<0,则这个向量一定是以这个起点为端点的所有向量中最边上的那两个向量之一。