猿问

silverlight如何判断一个Point在某个Polygon区域内

一个Canvas上覆盖了多个Polygon,我在Canvas上用鼠标拖动一个小球,如何判断这个小球在拖动的过程中进入不同的Polygon。

PS:小球和Polygon都是Canvas的子对象


喵喵时光机
浏览 452回答 2
2回答

GCT1015

如果不是很严格的判断:当鼠标拖动过程中,鼠标进入区域是才算进入。则可以反转过来,只要判断鼠标是不是进入区域[每个区域的鼠标事件],同时鼠标是不是处理拖动状态,就可实现了。 如果很严格要用到多边型边界碰到才算进入,那个算法应该是相当的麻烦;那就稍为不严格一点好了,将取多边型的四个角的点,型成一个大的矩型,这样判断矩形就好判断了,然后再修补下误差。

动漫人物

可以计算polygon覆盖区域,再与鼠标坐标进行比较如果没有更好的办法,不妨这么做
随时随地看视频慕课网APP
我要回答