现在给你不共线的三个点A,B,C的坐标,它们一定能组成一个三角形,现在让你判断A,B,C是顺时针给出的还是逆时针给出的?
一种:
利用矢量叉积判断是逆时针还是顺时针。
设A(x1,y1),B(x2,y2),C(x3,y3),则三角形两边的矢量分别是:
AB=(x2-x1,y2-y1), AC=(x3-x1,y3-y1)
则AB和AC的叉积为:(2*2的行列式)
x2-x1, y2-y1
x3-x1, y3-y1
值为:(x2-x1)(y3-y1) - (y2-y1)(x3-x1)
利用右手法则进行判断:
如果AB*AC>0,则三角形ABC是逆时针的
如果AB*AC<0,则三角形ABC是顺时针的
如果…… =0,则说明三点共线
另一种:
解析:
有向面积可以是正的,可以是负的,这取决于围成封闭图形的向量。
如果三角形ABC三个顶点呈 逆时针 排列则有向面积为 正,顺时针 排列则为 负,三点共线时 ,有向面积为0;
设A(x1,y1) B(x2,y2) C(x3,y3) 三角形ABC有向面积为s;则s的2倍 2s=(x1y2+x3y1+x2y3-x3y2-x1y3-x2*y1;
如果难记可以记它的行列式形式:
x1 y1 1
2*s = x2 y2 1
x3 y3 1
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!