现在的位置: 首页 > 综合 > 正文

关于不规则区域的鼠标判定方法(一)—凸包实现.

2013年09月12日 ⁄ 综合 ⁄ 共 305字 ⁄ 字号 评论关闭

凸包的定义:

内角和是360°的就是凸包.看起来就是围出来的凸多边形.每个角没有超过180°的.

凸包的形成:

凸包是由n个收尾相接的向量围出来的.所以有顺序的说法.

凸包的样子:

该图形是5个点,5个向量围出来的图形.

1. P0 -> P1

2. P1 -> P2

3. P2 -> P3

4. P3 -> P4

5. P4 -> P0

根据向量可以根据右手法则.知道2d向量的2d法线. .之后就可以判定.点是否在凸包内还是凸包外了.

算法实现:

1.围出包.记录下来点的坐标.之后配出向量..

2.之后向量之后可以修改x y的正负号来.找到该向量的法线.

3.之后判断与法线是同侧还是不同侧.

4..如果所有的5个法线判断都是内侧.那么就可以判断在凸包内了.

算法代码:




抱歉!评论已关闭.