1

我正在为“颜色”类编写一个方法,该方法将从 GLKVector4 的数组(如 GLKit 中找到)中随机选择一种颜色。颜色如下所示:

    self.WHITE=GLKVector4Make(1.0, 1.0, 1.0, 1.0);
    self.RED=GLKVector4Make(1.0, 0.0, 0.0, 1.0);
    self.GREEN=GLKVector4Make(0.0, 1.0, 0.0, 1.0);
    self.BLUE=GLKVector4Make(0.0, 0.0, 1.0, 1.0);
    self.BLACK=GLKVector4Make(0.0, 0.0, 0.0, 1.0);

我想将它们放入一个数组中,以便我可以随机选择一个。问题是 GLKVector4 对 NSArray 不友好,因为它们不被识别为类型 id,我想不出一种轻松转换它们的方法。

有没有办法将 GLKVector 转换为我可以放入数组的东西?更重要的是,这是组织颜色的好方法吗?也许有更合适的东西。

4

1 回答 1

1

为什么不只使用基本的 C 数组?

GLKVector4 colors[5] = {self.WHITE, self.RED, self.GREEN, self.BLUE, self.BLACK};
//...
GLKVector4 randomColor = colors[arc4random_uniform(5)];
于 2012-08-24T20:22:24.333 回答