This method produces an interesting effect similar to pinching a raster image then twisting your fingers.

[Visual Basic] Public Function WhirlPinch(whirl As Double, pinch As Double, radius As Double, red As Integer, green As Integer, blue As Integer) As Boolean
[C#] public bool WhirlPinch(double whirl, double pinch, double radius, short red, short green, short blue);

Parameters

whirl
   Sets the number of degrees of the twisting effect

pinch
   Sets the "strength" of the pinch

radius
   Sets the size of the area affected by the twisting effect (more than 0)

red
   Sets the red component of the background color (from 0 to 255)

green
   Sets the green component of the background color (from 0 to 255)

blue
   Sets the blue component of the background color (from 0 to 255)

Return Value

Returns True if successful. Returns False if unsuccessful.

Explanation

The WhirlPinch method creates an effect similar to pinching a raster image and then twisting your fingers. The Whirl parameter sets the number of degrees of the twisting effect. A value of 360 would mean that the twisting effect makes one complete revolution. The Radius parameter sets the size of the twisting effect on the image. As the Radius parameter increases in size, it affects larger areas on the image. Values of 2 or more could mean the the radius of the twisting effect is larger than the image itself. In this case the background color is used to fill any spaces that are outside of the orginal image. It is recommended that you set a Radius value of less than 1 so that the area affected remains within the image, then experiment with the Whirl parameter to get the desired effect. The Pinch parameter does exactly that, it pinches the area in the center of the twisting effect. A Pinch parameter of 1 will bring all of the colors together in the center. Values greater than 1 can "tear" the image in which case the background color is painted in the center.

To execute the WhirlPinch method, set the image handle of the image in the Image property or the Layer(LayerNumber).Image property. The WhirlPinch method supports 8 bit grayscale, 16, 24, and 32 bit images.

Before executing the WhirlPinch method, you must set the area on the image that will be affected. There are 4 ways to do this.

  1. To use a mask image, set the SelectMode property to EffectMask. Set the mask image handle in the SourceMask property
  2. To process the total image, set the SelectMode property to EffectAll
  3. To process the polygonal area on the image, set the SelectMode property to EffectPolygon. Select the polygon by setting the appropriate coordinate values for the points of the polygon in the Point property
  4. To process an elliptical area on the image, set the SelectMode property to EffectEllipse. Select the ellipse by setting the appropriate values for the bounding rectangle in the Rect property

When the SelectMode property is set to EffectPolygon or EffectEllipse, the appropriate values must be set in the Inside property. When a 1, 4, or 8 bit image is processed, the total image will be processed regardless of the value set in the SelectMode property.

If the WhirlPinch method is successful and the DestinationAsImageKitImage property is True, the resulting image will be set in the Image property or in the Layer(LayerNumber).Image property, according to the value set in the LayerNumber property.

If the WhirlPinch method is successful and the DestinationAsImageKitImage property is False, the resulting image will be set in the DestinationImage property.

See Also

ImageKit.Effect Members | Newtone.ImageKit.Wpf.ImageKit

The ImageKit WPF is created by Newtone Corporation