我正在尝试使用
CGAffineTransform
转换一个点的数组。缩放功能完美,但是点使用左上角作为 (0,0),而不是左下角。如下所示...
通常我只需使用 CGAffineTransformMakeScale(1,-1);
,但由于我已经执行了缩放,因此无法将其添加到现有变换中。
这是我的当前代码:
- (CGAffineTransform)transformFromValueToScreen
{
CGRect fromRect = self.valueSpace;
CGRect viewRect = self.screenSpace;
CGSize scales = CGSizeMake(viewRect.size.width/fromRect.size.width,
viewRect.size.height/fromRect.size.height);
CGAffineTransform transform = CGAffineTransformMakeScale(scales.width,
scales.height);
return transform;
}
fromRect.bounds.height
应该改为viewRect.size.height
。 - BenjaminviewRect
看起来是正确的。而使用fromRect
会把整个转换放得太高。干杯! - Benjamin