Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 4th, 2012  |  syntax: None  |  size: 0.98 KB  |  hits: 33  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Improving Performance of CALayer Filters
  2. CIFilter *blurFilter = [CIFilter filterWithName:@"CIDiscBlur"];
  3.     [blurFilter setDefaults];
  4.     [blurFilter setValue:(id)[NSNumber numberWithFloat:15.0] forKey:@"inputRadius"];
  5.  
  6.     dotFilters = [[NSArray arrayWithObjects:(id)blurFilter, nil] retain];
  7.  
  8.     CGColorRef purpleColor = CGColorCreateGenericRGB(0.604, 0.247, 0.463, 1.0);
  9.  
  10.     CALayer *dot = [[CALayer layer] retain];
  11.     dot.backgroundColor = purpleColor;
  12.     dot.cornerRadius = 15.0f;
  13.     dot.filters = dotFilters;
  14.  
  15.     NSRect screenRect = [[self.window screen] frame];
  16.  
  17.     //  10 point border around the screen
  18.  
  19.     CGFloat width = screenRect.size.width - 20;
  20.     CGFloat height = screenRect.size.height - 20;
  21.  
  22.     #define ARC4RANDOM_MAX      0x100000000
  23.     width = ((CGFloat)arc4random() / ARC4RANDOM_MAX) * width + 10;
  24.     height = ((CGFloat)arc4random() / ARC4RANDOM_MAX) * height + 10;
  25.  
  26.     dot.frame = CGRectMake(width, height, 20,20);//30, 30);
  27.  
  28.  
  29.     [dot addSublayer:dotsLayer];