请忽略排版....................
判断某个点是否在扇形或者不规则区域内,如果精度要求不高,可以使用三角形原理来判断。
如果精度要求很高,且效率要求很高(游戏开发) ,可以参考 http://www.cnblogs.com/miloyip/archive/2013/04/19/3029852.html
这里要介绍安卓的一个很有效的方法,使用 Region这个类。 Region 有一个 contains方法,判断某个点是否在区域内。
Region多数放 RectF 里面,可以多个,连续或者不连续,重叠或者不重叠都可以。主要还可以放 Path 在里面。
关于 Path 的详细介绍 请参考官网 或者 http://blog.csdn.net/w124374860/article/details/44995057。
这里主要用到 path 的 addArc方法
addArc(RectF oval, float startAngle, float sweepAngle)方法:
path.addArc方法用于绘制圆弧,这个圆弧取自RectF矩形的内接椭圆上的一部分,圆弧长度由后两个参数决定
startAngle:起始位置的角度值