void ApplyFilter() { CIVector center = CIVector.Create(Bounds.GetMidX(), Bounds.GetMidY()); CIFilter torus = CIFilter.FromName("CITorusLensDistortion"); var keys = new NSString[] { CIFilterInputKey.Center, CIFilterInputKey.Radius, CIFilterInputKey.Width, CIFilterInputKey.Refraction }; var values = new NSObject[] { center, NSNumber.FromFloat(150), NSNumber.FromFloat(2), NSNumber.FromFloat(1.7f) }; torus.SetValuesForKeysWithDictionary(NSDictionary.FromObjectsAndKeys(values, keys)); controls.BackgroundFilters = new CIFilter[] { torus }; AddAnimationToTorusFilter(); }