Herror ::gen_region_polygon (
    Hobject *Region,
    const HTuple &Rows,
    const HTuple &Columns
)
HRegion HRegion::GenRegionPolygon (
    const HTuple &Rows,
    const HTuple &Columns
)

Store a polygon as an image object.

The operator ::gen_region_polygon creates a region from a polygon row described by a series of line and column coordinates. The created region consists of the pixels of the routes defined thereby, wherein it is linearily interpolated between the base points.


Attention

The region is automatically closed and not filled. The gray values of the output regions are undefined. All base points must be located within the image format. If no pixels are passed an empty region is created.


Parameters

Region (output_object)
region -> Hobject * : HRegion
Created region.

Rows (input_control)
polygon.y-array -> HTuple.long
Line indices of the base points of the region contour.
Default value: 100
Suggested values: 0, 10, 30, 50, 100, 200, 300, 500
Typical range of values: 0 <= Rows <= 511 (lin)
Minimum increment: 1
Recommended increment: 1

Columns (input_control)
polygon.x-array -> HTuple.long
Colum indices of the base points of the region contour.
Default value: 100
Suggested values: 0, 10, 30, 50, 100, 200, 300, 500
Typical range of values: 0 <= Columns <= 511 (lin)
Minimum increment: 1
Recommended increment: 1
Number of elements: Columns == Rows


Example
/* Polygon-approximation */
T_get_region_polygon(Region,7,&Row,&Column);
/* store it as a region */
T_gen_region_polygon(&Pol,Row,Column);
destroy_tuple(Row);
destroy_tuple(Column);
/* fill up the hole */
fill_up(Pol,&Filled);

Result

If the base points are correct the operator ::gen_region_polygon returns the value H_MSG_TRUE. Otherwise an exception handling is raised. The clipping according to the current image format is set via the operator ::set_system('clip_region',<'true'/'false'>). If an empty region is created the operator ::set_system('store_gen_empty_region',<true/false>) determines whether the region is returned.


Possible Predecessors

::get_region_polygon, ::draw_polygon


Alternatives

::gen_region_polygon_filled, ::gen_region_points, ::gen_region_runs


See also

::fill_up, ::reduce_domain, ::get_region_polygon, ::draw_polygon


Module

Region processing



Copyright © 1996-2002 MVTec Software GmbH