Ios 是否有可访问的库函数来获取一组UITouch的质心?
From:如果一个Ios 是否有可访问的库函数来获取一组UITouch的质心?,ios,cocoa-touch,Ios,Cocoa Touch,From:如果一个UIGestureRecognitor正在跟踪多个触摸,locationInView:将(通常)返回: 。。。手势中涉及的触摸的质心 据我所知,如果您没有使用手势识别器,而是直接通过touchesbeated:withEvent:等跟踪触摸,您只能向touchs中的每个UITouch询问其位置查看: 很明显,我可以迭代所有的触摸并自己计算质心,但我猜肯定有一些iOS库函数可以做到这一点。我说的对吗?这个功能可以访问吗?或者,有没有其他方法可以获得相同的功能,或者我应该停止抱怨,
UIGestureRecognitor
正在跟踪多个触摸,locationInView:
将(通常)返回:
。。。手势中涉及的触摸的质心
据我所知,如果您没有使用手势识别器,而是直接通过touchesbeated:withEvent:
等跟踪触摸,您只能向touchs
中的每个UITouch
询问其位置查看:
很明显,我可以迭代所有的触摸并自己计算质心,但我猜肯定有一些iOS库函数可以做到这一点。我说的对吗?这个功能可以访问吗?或者,有没有其他方法可以获得相同的功能,或者我应该停止抱怨,自己计算质心吗?AFAIK,苹果没有提供任何东西。写起来相当简单
// returns (0,0) if touches is nil or empty
-(CGPoint) centroidOfTouches:(NSSet *)touches inView:(UIView *)view
{
CGPoint centroid = CGPointZero,
curTouchPoint;
for (UITouch *touch in touches) {
curTouchPoint = [touch locationInView:view];
centroid.x += curTouchPoint.x;
centroid.y += curTouchPoint.y;
}
centroid.x /= [touches count];
centroid.y /= [touches count];
return centroid;
}
“或者我应该停止抱怨,自己计算质心吗?”,是的,这不需要更多的时间来阐述你的问题