求助,CCMenuItem如何让他的点击响应区域是圆形

毕设做的是一款卡牌游戏
目前主界面菜单设计的是有点类似仙剑的战斗界面那种
中间一大圆,周围几小圆的样式
但是点击响应的时候就出问题了
中间的大圆是个正方形响应,把周围的小圆遮住了,
那么如何去做成圆形响应呢?

你可以继承一个CCMenu类,然后重写 ccTouchBegan,看看CCMenu里是如何实现的

我感觉直接用controlbutton比较好,把放大关了,就一样了

不懂, 帮顶:867::867::867::867:

— Begin quote from ____

引用第1楼yvhfnvj于2014-03-26 15:40发表的 :
你可以继承一个CCMenu类,然后重写 ccTouchBegan,看看CCMenu里是如何实现的 http://www.cocoachina.com/bbs/job.php?action=topost&tid=195616&pid=911761

— End quote

这个方法好,之前怎么没想到呢
不过我看CCMenu里面似乎不用重写ccTouchBegan
ccTouchBegan调用了一个itemForTouch方法来返回被点击CCMenuItem,再调用这个CCMenuItem的selected方法。
所以只用重写itemForTouch,把里面的矩形判定改为圆形判定就OK了。
理论上可行,现在在实际编写中,先谢谢了

— Begin quote from ____

引用第2楼q3972551于2014-03-26 17:26发表的 :
我感觉直接用controlbutton比较好,把放大关了,就一样了 http://www.cocoachina.com/bbs/job.php?action=topost&tid=195616&pid=911934

— End quote

可能是没看懂这个类,没看到他有什么改变判定区域的方法啊
网上搜教程也是各种互相抄,讲的好多都是可以变大小或者变字体颜色之类的
可以的话,能不能说说详细的方法名称呢

— Begin quote from ____

引用第3楼sapre于2014-03-27 10:15发表的 :
不懂, 帮顶:867::867::867::867: http://www.cocoachina.com/bbs/job.php?action=topost&tid=195616&pid=912392

— End quote

谢谢版主支持~

可是。。。这个圆形的区域你要怎么计算呢??图片弄过来的永远都是矩形啊。。。cocos2dx里有获得圆形的算法吗?求教。。

点击点到图片的距离 小于等于半径就是点到了圆上呗= =