请原谅这个天真的问题,但是有什么直接的方法可以从坐标对创建cgpoint,而无需分别提取x和y值。
我知道你可以做:
CGPoint point = CGPointMake(2, 3);
要么float x = 2;
float y = 3;
CGPoint p = CGPointMake(x,y);
有什么方法可以直接从(2,3)创建一个点,而无需分别提取x和y?我要问的原因是我必须从看起来像
[(2,3),(4,5),(6,7)]
等的坐标数组中创建很多CGPoint。在此先感谢您的任何建议。
最佳答案
将map
和CGPoint
初始化与x
和y
参数一起使用。
let coordinates = [(2,3),(4,5),(6,7)]
let points = coordinates.map { CGPoint(x: $0, y: $1) }
print("\(type(of: points)): \(points)") // You'll get an `[CGPoint]` although they print as normal [(x, y)] tuples array.
关于ios - 以编程方式向cgpointmake或cgpoint提供参数以从坐标对创建cgpoint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62862054/