スワイプジェスチャまたはドラッグジェスチャの間のデルタを計算したいと思います。私がやりたいことは、このデルタを取得し、速度として(時間varを追加することによって)それを使用することです。 touchesMoved
またはUIPanGestureRecognizer
を介して、私はこれをどうすればいいのか分かりません。また、私は実際にそれらの違いを理解していません。今私は画面に最初のタッチを設定して取得するが、私はベクトルを計算することができるように最後のものを取得する方法がわからない。誰もそれで私を助けることができますか?スワイプ/ドラッグタッチのデルタを取得する方法
class GameScene: SKScene {
var start: CGPoint?
var end: CGPoint?
override func didMove(to view: SKView) {
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
guard let touch = touches.first else {return}
self.start = touch.location(in: self)
print("start point: ", start!)
}
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
guard let touch = touches.first else {return}
self.end = touch.location(in: self)
print("end point: ", end!)
let deltax:CGFloat = ((self.start?.x)! - (self.end?.x)!)
let deltay:CGFloat = ((self.start?.y)! - (self.end?.y)!)
print(UInt(deltax))
print(UInt(deltay))
}