您可以单独处理每个边缘并且"放大"它们形成所需宽度的矩形条。
这是通过将测试点投影到边缘支撑线上,检查投影是否落在线段上,并计算两点之间的距离来完成的。
让AB
成为边缘段,P
成为点。 Q(t) = A + t AB
是沿着边缘的任意点,我们希望它是投影,所以矢量,
PQ(t).AB = (PA + t AB).AB = 0,
t = - PA.AB / AB²
只需检查t
是否属于[0,1]
并计算|PQ(t)|
。
为了在拐角处进行良好的处理,您可以考虑从点到顶点的距离。
保持所有距离的最短距离。