1

アプリにフラッド フィル アルゴリズムを実装しようとしています。GitHub からコードを取得しました。ターゲット カラーと置換カラーを int の形式で渡す必要があります。私は次のように試しました、

const CGFloat *components = CGColorGetComponents(color.CGColor);
NSString *colorAsString = [NSString stringWithFormat:@"%f,%f,%f,%f", components[0], components[1], components[2], components[3]];
 NSLog(@"colors original is %f %f %f %f",components[0],components[1], components[2], components[3]);
NSLog(@"original color is %d",[colorAsString intValue]);
UIColor *targetColor=[UIColor redColor];
const CGFloat *target = CGColorGetComponents(targetColor.CGColor);
NSString *colorAstarget = [NSString stringWithFormat:@"%f,%f,%f,%f", target[0], target[1], target[2], target[3]];
NSLog(@"colors target is %f %f %f %f",target[0], target[1], target[2], target[3]);

NSLog(@"target color is %d",[colorAstarget intValue]);

しかし、フラッドフィルが0を返すように、NSLogsで両方を1として取得しています。助けてくださいありがとう

4

0 に答える 0