gpt4 book ai didi

objective-c - 从 UIViewController 内部在 iOS objective-c 中绘制 4.000 个点或线

转载 作者:行者123 更新时间:2023-11-28 22:55:03 25 4
gpt4 key购买 nike

我有一个包含超过 4.000 个 CGPoints 的 NSArray

[NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(213, 30)], ...

并想从我的 UIViewController 中绘制它们之间的点或线。 iOS 设备的最佳方式是什么?谢谢

最佳答案

听起来您正在尝试使用 Sprite 或粒子生成?在不知道更多细节的情况下,我只能给出一个笼统的答案,但让我试一试。让我们假设这些点都是简单的 1 像素彩色物体。不需要渐变或路径,只需“将 x,y 处的像素设置为红色/绿色/蓝色。”

您应该能够轻松地同时操作 4,000 个 CALayer 对象:

CALayer *rootLayer = [[self view] layer]; // assumes self is a view controller
NSMutableArray *mSprites = [NSMutableArray array]; // to store references to the layers

for (int i = 0; i < 4000; i++) {
CALayer *layer = [CALayer layer];
NSAssert1(layer != nil, @"failed to create CALayer #%i", i);

layer.backgroundColor = [UIColor colorWithRed:... green:... blue:... alpha:1.0].CGColor;
layer.frame = CGRectMake(rand(), rand(), 1.0, 1.0);

[mSprites addObject:layer];
[rootLayer addSublayer:layer];
}

self.my4000SpritesProperty = mSprites;

然后,当需要操作它们时,进入位于 self.my4000SpritesProperty 的数组并更改图层的框架或其他属性。

对于 4,000 个元素,Core Animation 的性能应该可以接受。

关于objective-c - 从 UIViewController 内部在 iOS objective-c 中绘制 4.000 个点或线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10997315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com