0

假设我有一个坐标为 (50,100) 的点,其中 (0,0) 位于视图的左上角。

如果我希望坐标系的开头是屏幕的中心(即宽度/2,高度/2),如何获得同一点的坐标?

请注意,我正在实现一个自定义视图,并且我正在其中进行绘图,我只想在同一个视图内转换坐标。我基本上是在实现一个图形计算器,我需要让我的坐标系从屏幕中间开始,这样图形才能看起来更好。

4

2 回答 2

3

我注意到您将其标记为 iOS 问题,因此请使用 Apple 在 UIView 中内置的方法:

(CGPoint)convertPoint:(CGPoint)point fromView:(UIView *)view

于 2012-08-16T16:43:39.110 回答
-3

找到您将使用的中点,因此对于 100x100 屏幕,这将是 (50,50)。然后取你需要转换的点,从点X值中减去中点X值,再从中点Y值中减去点Y值。请注意,您没有对两个值执行相同的操作。

因此,如果该点是 (30,25),则新点将是 (-20,25),因为 30 - 50 = -20 和 50 - 25 = 25。

于 2012-08-16T16:40:08.843 回答