Я пытаюсь повернуть изображение.Это мне удается.Проблема в том, что когда я нажимаю вниз и слегка перетаскиваю, изображение полностью поворачивается, чтобы достичь точки, где я щелкнул, а затем медленно вращается, когда я перетаскиваю изображение по часовой стрелке.Я обеспокоен тем, почему он вращается полностью к месту, которое я тащу.Я хочу, чтобы перетаскивание начиналось с позиции, в которой оно было найдено, а НЕ вращалось там, где находится мой палец, а затем начиналось оттуда.
Это мой код:
-
(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
}
-(void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
NSSet *allTouches = [event allTouches];
int len = [allTouches count]-1;
UITouch *touch =[[allTouches allObjects] objectAtIndex:len];
CGPoint location = [touch locationInView:[self superview]];
float theAngle = atan2( location.y-self.center.y, location.x-self.center.x );
totalRadians = theAngle;
[self rotateImage:theAngle];
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
}
-(void) rotateImage:(float)angleRadians{
self.transform = CGAffineTransformMakeRotation(angleRadians);
CATransform3D rotatedTransform = self.layer.transform;
self.layer.transform = rotatedTransform;
}
Я что-то не так делаю?
Спасибо!