Parameters
Name | Explanation |
---|---|
x | An array of x coordinate values defining points of a polygonal area on the image. (in pixels) * |
y | An array of y coordinate values defining points of a polygonal area on the image. (in pixels) * |
Plane | Sets which plane will be used to process the outline. (0:Y, 1:R, 2:G, 3:B) |
Operator | Sets the edge filtering function used to process the outline (0:Differential, 1:Roberts, 2:Sobel) |
Level | Sets the level at which an outline is drawn. (from 0 to 100) |
* In Visual Basic, the arguments are returned in the first elements of the arrays x and y. |
Return Value
Returns True (nonzero) if successful, otherwise returns False (0).
Explanation
The OutlineVariant method produces an outline of a raster
image by identifying and displaying only the "edges" within the
image. This method is recommended when using scripting or other
languages that require variant types.
In general, the luminance plane is most commonly used. (Plane
parameter = 0). In this case, differences in brightness are used to
identify edges. However, the red plane, green plane or blue plane
can also be used to identify an edge So for example if the red
plane is used (Plane parameter = 1) then differences in the R
values would be used to identify the edges within an image.
The Operator parameter determines how an edge is identified. The
Level parameter determines at which value an edge will be
displayed. When the Differential Operator is used, (Operator=0),
the differences between the pixel values (either brightness, red,
green, or blue) are calculated and then depending on the value of
the Level parameter, the edges are displayed. The Differential
Operator evaluates these difference in a horizontal and/or vertical
direction. The Roberts Operator (Operator=1) also uses a
differential calculation, but evaluates these differences at a 45
degree orientation. The Sorbel Operator (Operator=2) is very
similar to the above two operators except that with Sorbel there is
an additional correction for images that have a lot of
complexity.
To execute the OutlineVariant method, set the image handle
of the image in the ImageHandle property or the
Layer(LayerNo).ImageHandle
property. The OutlineVariant method supports 8 bit
grayscale, 16, 24, and 32 bit images.
Before executing the OutlineVariant method, you must set the
area on the image that will be affected. There are 4 ways to do
this.
- To use a mask image, set the SelectMode property to 0. Set the mask image handle in the MaskImageHandle property
- To process the total image, set the SelectMode property to 1
- To process the polygonal area on the image, set the SelectMode property to 2. Select the polygon by setting the appropriate coordinate values for the points of the polygon in two arrays, one array for the x coordinate values and one array for the y coordinate values. The pass these arrays to the x and y arguments of the OutlineVariant method. The number of points defining the polygon must be 3 or more
- To process an elliptical area on the image, set the SelectMode property to 3. Select the ellipse by setting the appropriate values for the bounding rectangle in the RectLeft, RectTop, RectRight, and RectBottom properties
When the SelectMode
property is set to values other than 2 (ikEffectPolygon), please
set dummy arrays in the x and y parameters.
When the SelectMode property
is set to 2 or 3, the appropriate value must be set in the InOut property. If successful the resulting
raster image data is set in the LayerNo property (the ImageHandle property or the
Layer(LayerNo).ImageHandle
property. If unsuccessful, 0 is returned.
When the Caption, Message, and ButtonName properties are blank, the
progress dialog box will not be displayed. When the progress dialog
box is displayed, the percentage that the processing has completed
will be shown in the dialog box.
Also see the Outline method.