假设触摸变量是t
①t->getLocation()能得到触摸的全局GL坐标
②然后将这个坐标转换到按钮的局部坐标:按钮->convertToNodeSpace(globalP);//忽略掉注册点,是因为等下获取按钮举行的时候,就是从按钮左下角作为原点的
③然后获取按钮的矩形:Rect r = 按钮->getBoundingBox();
④r.origin = Vec2::ZERO;//转换成(0,0),是因为globalp现在就是以按钮左下角为原点,所以按钮的矩形也要以其左下角为原点
⑤判断是否包含r.containsPoint(globalP)
ok,大功告成
触摸点是否在按钮矩形内
时间: 2024-11-18 18:04:42