关键就是剪除扇形,根据下面代码自己再调调吧
public void getSector(Canvas canvas, float radius, double fromDegree, double toDegree, Op op) {
            canvas.translate(radius, radius);
            Path pathCircle = new Path();
            pathCircle.addCircle(0, 0, radius, Direction.CCW);
            Path pathTriangle = new Path();
            pathTriangle.moveTo(0, 0);
            float vYFrom = (float) (Math.sin(fromDegree * Math.PI / 180) * 2 * radius);
            float vYTo = (float) (Math.sin(toDegree * Math.PI / 180) * 2 * radius);
            float vYCenter = (float) (Math.sin(((toDegree + fromDegree) / 2) * Math.PI / 180) * 2 * radius);
            float vXFrom = (float) (Math.cos(fromDegree * Math.PI / 180) * 2 * radius);
            float vXTo = (float) (Math.cos(toDegree * Math.PI / 180) * 2 * radius);
            float vXCenter = (float) (Math.sin(((toDegree + fromDegree) / 2) * Math.PI / 180) * 2 * radius);
            pathTriangle.lineTo(vXFrom, vYFrom);
            pathTriangle.lineTo(vXCenter, vYCenter);
            pathTriangle.lineTo(vXTo, vYTo);
            pathTriangle.close();
            canvas.clipPath(pathCircle);
            canvas.clipPath(pathTriangle, op);
        }