ios - 以编程方式向cgpointmake或cgpoint提供参数以从坐标对创建cgpoint

标签 ios objective-c swift cgpoint

请原谅这个天真的问题,但是有什么直接的方法可以从坐标对创建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。
在此先感谢您的任何建议。

最佳答案

mapCGPoint初始化与xy参数一起使用。

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/

相关文章:

ios - 在保存到 TableView Controller 的 Swift 中将 TextField 添加到 UIAlertView

ios - graphRequest.start 不返回任何数据

ios - 在加载之前为所有索引调用 sizeForItemAtIndexPath - 我很确定我遇到了 UICollectionView 错误或糟糕的设计

Swift 3 在初始化类后获取可选项

ios - session.dataTask 是异步的吗?

arrays - Swift 数组映射跳过值

ios - 当应用程序被终止/强制退出时设置角标(Badge)计数

iphone - 如何制作带边框的半圆形(顶角圆角) TextView ?

objective-c - 在 init 中创建后 NSMutableArray 为空(带代码)

ios - 无法滑动图片