在三角结网的过程中其中有两个很基础知识:方向检测和内切圆检测。
方向检测:即判定一个点是否位于射线的位于左边,右边,或者线上。
内切圆检测:即判定一个点是否位于内侧、外侧或者圆上。
这两个检测方法如下图所示:
判断一个点是否在一条射线的左边可以转化成两个向量的叉积的方向只想问题设点P,和射线AB,则两个向量分别为:a=AB,b=AP,由叉积的定义,对三维的两个向量a,b而言:
假设a , b都是二维的则方向和a,b两向量构成的平面垂直;
根据右手定则:一个简单的确定满足“右手定则”的结果向量的方向的方法是这样的:若坐标系是满足右手定则的,当右手的四指从a以不超过180度的转角转向b时,竖起的大拇指指向是c的方向。由于向量的叉积由坐标系确定,所以其结果被称为伪向量。
那么我们就可以根据 c 方向来判断点是在射线的左边还是右边.
判断原则如下:看的正负
1.如果,则点P在射线AB的左边。
2.如果,则点P在射线AB上。
3.如果,则点P在射线AB的右边。