雨燕3.0
var transform = CGAffineTransform.identity
transform = transform.scaledBy(x: scale, y: scale)
transform = transform.translatedBy(x: translation.x/scale, y: translation.y/scale)
我试过这个
let transform = CGAffineTransformIdentity
let scaleTransform = CGAffineTransformMakeScale(scale, scale)
let translateValue = CGAffineTransformTranslate(transform,translation.x / scale , translation.y / scale)
但没有得到所需的结果,任何帮助将不胜感激。
2条答案
按热度按时间ibrsph3r1#
对于像Core Graphics这样的已经为Swift优化的API,你可以切换到Objective-C文档,它会找到相应的符号。这些符号与Core Graphics在Swift 2.x中使用的符号相同,在API优化之前。
如果对
scaledBy(x:y:)
执行此操作您将看到对应的符号是CGAffineTransformScale(注意它是...
Scale
而不是...MakeScale
)。我没有现成的Swift 2.x的Xcode,但你的Swift 2.3代码看起来像这样:
pexxcrt22#
这一点:
不会缩放您的
transform
。所以您只是在转换中犯了一个小错误。因此,由于该标识是默认的,因此应该可以: