Tag: cgaffinetransform

绕一个点旋转一步仿射变换?

我怎样才能做一个核心graphics仿射变换围绕angular度的一个点x,y旋转,使用只有一个调用CGAffineTransformMake()加上math.h trig函数,如sin(),cos()等,和没有其他CG电话。 其他答案似乎是使用多个Core Graphics调用使用多个堆栈变换或多步骤变换来移动,旋转和移动。 这些答案不符合我的具体要求。

UIPinchGestureRecognizer中的捏放大的最大/最小比例 – iPhone iOS

我怎样才能将UIPinchGestureRecognizer的规模限制在最低和最高水平? 下面的比例属性似乎是相对于最后一个已知的规模(从上一个国家的增量),我不知道如何设置对被缩放的对象的大小/高度的限制。 -(void)scale:(id)sender { [self.view bringSubviewToFront:[(UIPinchGestureRecognizer*)sender view]]; if([(UIPinchGestureRecognizer*)sender state] == UIGestureRecognizerStateEnded) { lastScale = 1.0; return; } CGFloat pinchscale = [(UIPinchGestureRecognizer*)sender scale]; CGFloat scale = 1.0 – (lastScale – pinchscale); CGAffineTransform currentTransform = [(UIPinchGestureRecognizer*)sender view].transform; CGAffineTransform holderTransform = holderView.transform; CGAffineTransform newTransform = CGAffineTransformScale(currentTransform, scale, scale); [[(UIPinchGestureRecognizer*)sender view] setTransform:newTransform]; lastScale = [(UIPinchGestureRecognizer*)sender scale]; }