Я пытаюсь создать цвет градиента из массива словаря (colorArray2). Этот словарь содержит 5 ключей: r, g, b, a, p. r, g, b, a - значения компонентов (строки), p - местоположение. Я пытаюсь создать цвет градиента с initWithColors: atLocations: colorSpace. На данный момент у меня есть следующее.Создание массива CGFloat для градиентных локаций
NSGradient *aGradient;
NSColorSpace *space = [NSColorSpace genericRGBColorSpace];
NSMutableArray *cArray = [[NSMutableArray alloc] initWithObjects:nil]; // storing colors
NSMutableArray *pArray = [[NSMutableArray alloc] initWithObjects:nil]; // storing locations
for (NSInteger i2 = 0; i2 < colorArray2.count; i2++) {
NSString *r = [[colorArray2 objectAtIndex:i2] objectForKey:key2a];
NSString *g = [[colorArray2 objectAtIndex:i2] objectForKey:key2b];
NSString *b = [[colorArray2 objectAtIndex:i2] objectForKey:key2c];
NSString *a = [[colorArray2 objectAtIndex:i2] objectForKey:key2d];
NSString *p = [[colorArray2 objectAtIndex:i2] objectForKey:key2e];
NSColor *color = [NSColor colorWithSRGBRed:[r integerValue]/255.0f green:[g integerValue]/255.0f blue:[b integerValue]/255.0f alpha:[a integerValue]/100.0f];
[cArray addObject:color];
[pArray addObject:[NSNumber numberWithDouble:[p doubleValue]]];
}
У меня есть массив (cArray), содержащий цвета. Я не знаю, как создать массив местоположений. Согласно документации, местоположения представляют собой массив значений CGFloat, содержащих местоположение для каждого цвета в градиенте. Как я могу перечислять все, что нужно для создания массива с плавающей точкой?
Благодарим за помощь.
Update
Более конкретно, как сделать PArray, чтобы получить что-то вроде
double d[] = {0.1, 0.2, 0.3, 0.5, 1.0};
, так что я могу иметь
aGradient = [[NSGradient alloc] initWithColors:cArray atLocations:d colorSpace:space];
Умм ... Да. Я думаю, что это то, что у меня есть. Я отвечу на ваш вопрос. Спасибо. –