CoreImage.CIPerspectiveTransformWithExtent Class
A filter that alters a portion of the total image based on a perspective transform.

See Also: CIPerspectiveTransformWithExtent Members

Syntax

[ObjCRuntime.iOS(6, 0)]
public class CIPerspectiveTransformWithExtent : CIPerspectiveTransform

Remarks

The following example shows this filter in use

C# Example

// Create the CIImage from a file
CIImage heron = CIImage.FromCGImage (UIImage.FromFile ("heron.jpg").CGImage);

var extent = heron.Extent;

// Create a CIPerspectiveTransformWithExtent filter with the input image
var perspective_transform_with_extent = new CIPerspectiveTransformWithExtent () {
	Image = heron,
	BottomLeft = new CIVector (extent.Left + 70, extent.Top + 20),
	BottomRight = new CIVector (extent.Right - 70, extent.Top - 20),
	TopLeft = new CIVector (extent.Left - 70, extent.Bottom - 20),
	TopRight = new CIVector (extent.Right + 70, extent.Bottom + 20),
	Extent = new CIVector (new float [] {extent.X + 100, extent.Y + 100, extent.Width - 100, extent.Height - 100})
};

// Get the altered image from the filter
var output = perspective_transform_with_extent.OutputImage;

// To render the results, we need to create a context, and then
// use one of the context rendering APIs, in this case, we render the
// result into a CoreGraphics image, which is merely a useful representation
//
var context = CIContext.FromOptions (null);

var cgimage = context.CreateCGImage (output, output.Extent);

// The above cgimage can be added to a screen view, for example, this
// would add it to a UIImageView on the screen:
myImageView.Image = UIImage.FromImage (cgimage);
        

With the following image input:

Produces the following output:

"canon" © 2012 cuatrok77 hernandez, used under a Creative Commons Attribution-ShareAlike license: http://creativecommons.org/licenses/by-sa/3.0/

Requirements

Namespace: CoreImage
Assembly: Xamarin.iOS (in Xamarin.iOS.dll)
Assembly Versions: 0.0.0.0