原帖:http://blog.csdn.net/zhangao0086/article/details/39120331
关键代码:
struct CubeMap cubeMap = createCubeMap(180,240);
NSData *data_=[NSData dataWithBytesNoCopy:cubeMap.data length:(int)cubeMap.length freeWhenDone:true];
CIFilter *colorCubeFilter =[CIFilter filterWithName:@"CIColorCube"];
[colorCubeFilter setValue:@(cubeMap.dimension) forKey:@"inputCubeDimension"];
[colorCubeFilter setValue:data_ forKey:@"inputCubeData"];
[colorCubeFilter setValue:[[CIImage alloc]initWithImage:self.imageView.image] forKey:kCIInputImageKey];
CIImage *outputImage=colorCubeFilter.outputImage;
self.out_ImageView.image=[[UIImage alloc]initWithCIImage:outputImage];
CIFilter *sourceOverCompositingFilter=[CIFilter filterWithName:@"CISourceOverCompositing"];
[sourceOverCompositingFilter setValue:outputImage forKey:kCIInputImageKey];
[sourceOverCompositingFilter setValue:[[CIImage alloc]initWithImage:[UIImage imageNamed:@"test4_xiao"]] forKey:kCIInputBackgroundImageKey];
outputImage=sourceOverCompositingFilter.outputImage;
NSLog(@"new_cgimage:%@",outputImage);
UIImage *nsImage2=[[UIImage alloc] initWithCIImage:outputImage];
NSLog(@"nsImage2:%@",nsImage2);
CGImageRef new_cgimage=nsImage2.CGImage;
NSLog(@"new_cgimage:%@",new_cgimage);
CGImageRef this_cgimage = CGImageCreateWithImageInRect(new_cgimage, outputImage.extent);
self.imageView.image=nsImage2;