2016-01-30 4 views
0

Я хочу осуществить CIColorCube к моему UIImage и для этого я делаю следующее:Почему CIColorCube не реализует мои изображения?

var filter = CIFilter(name: "CIColorCube") 
    let sourceImage = CIImage(image: UIImage(named: "some_image.png")) 
    filter!.setValue(sourceImage, forKey: kCIInputImageKey) 
    filter!.setDefaults() 

    var size: UInt = 64 
    var floatSize = UInt(sizeof(Float)) 
    var cubeDataSize:size_t = Int(size * size * size * floatSize * 4) 

    let colorCubeData: [Float] = [ 
     1, 1, 1, 1, 
     1, 0, 0, 1, 
     0, 1, 0, 1, 
     1, 1, 0, 1, 
     0, 0, 1, 1, 
     1, 0, 1, 1, 
     0, 1, 1, 1, 
     1, 1, 1, 1 
    ] 
    let cubeData = NSData(bytes: colorCubeData, length: colorCubeData.count * sizeof(Float)) 
    let context = CIContext(options: nil) 
    let outputCGImage = context.createCGImage(filter!.outputImage!, fromRect: filter!.outputImage!.extent) 
    let filteredImage = UIImage(CGImage: outputCGImage) 

и когда я использую этот фильтр, чтобы мой образ, ничего не происходит. Итак, что я делаю неправильно? Это что-то, что я делаю неправильно?

ответ

0

Я думаю, что в коде выше вам не хватает этого:

filter!.setValue(cubeData, forKey: "inputCubeData") 
filter!.setValue(2, forKey: "inputCubeDimension")