gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXld (Operator)


gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXld — Generate XLD contours from regions.


gen_contour_region_xld(Regions : Contours : Mode : )

Herror gen_contour_region_xld(const Hobject Regions, Hobject* Contours, const char* Mode)

Herror T_gen_contour_region_xld(const Hobject Regions, Hobject* Contours, const Htuple Mode)

void GenContourRegionXld(const HObject& Regions, HObject* Contours, const HTuple& Mode)

HXLDCont HRegion::GenContourRegionXld(const HString& Mode) const

HXLDCont HRegion::GenContourRegionXld(const char* Mode) const

HXLDCont HRegion::GenContourRegionXld(const wchar_t* Mode) const   (Windows only)

void HXLDCont::HXLDCont(const HRegion& Regions, const HString& Mode)

void HXLDCont::HXLDCont(const HRegion& Regions, const char* Mode)

void HXLDCont::HXLDCont(const HRegion& Regions, const wchar_t* Mode)   (Windows only)

static void HOperatorSet.GenContourRegionXld(HObject regions, out HObject contours, HTuple mode)

HXLDCont HRegion.GenContourRegionXld(string mode)

public HXLDCont(HRegion regions, string mode)


gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldGenContourRegionXld generates XLD contours ContoursContoursContoursContourscontours from the regions given in RegionsRegionsRegionsRegionsregions. This operator is useful if regions have been obtained from segmentation operations, but higher level operators, e.g., polygon approximation and extraction of parallels, are to be performed on their boundaries. For each connected component of the input regions a closed contour of the boundary is generated. The parameter ModeModeModeModemode can take on the following values:

The difference between the two modes 'border'"border""border""border""border" and 'center'"center""center""center""center" can be seen by considering the following region: +-+-+ | | | +-+-+-+-+ | | | | | +-+ +-+-+-+-+ where | | symbolizes a single pixel. | | | | | +-+ +-+-+-+-+ | | | +-+-+ Then, computing the contour with 'border'"border""border""border""border" and 'center'"center""center""center""center" results in the following two contours, respectively: +-+-+ | | *-* +-+ +-+ / \ | | * * + + | | | | * * +-+ +-+ \ / | | *-* +-+-+ 'border' 'center' This means, for example, that contours generated with 'border'"border""border""border""border" will in general have a much larger Euclidean length (see length_xldlength_xldLengthXldLengthXldLengthXld) than contours generated with 'center'"center""center""center""center". This results from the fact that for diagonal border elements 'border'"border""border""border""border" uses two contour segments of length 1 each, whereas 'center'"center""center""center""center" uses a single segment of length . Other features, e.g., the area (see area_center_xldarea_center_xldAreaCenterXldAreaCenterXldAreaCenterXld), will obviously also have different values.

Execution Information


RegionsRegionsRegionsRegionsregions (input_object)  region(-array) objectHRegionHRegionHobject

Input regions.

ContoursContoursContoursContourscontours (output_object)  xld_cont(-array) objectHXLDContHXLDContHobject *

Resulting contours.

ModeModeModeModemode (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Mode of contour generation.

Default value: 'border' "border" "border" "border" "border"

List of values: 'border'"border""border""border""border", 'border_holes'"border_holes""border_holes""border_holes""border_holes", 'center'"center""center""center""center"

Possible Successors

smooth_contours_xldsmooth_contours_xldSmoothContoursXldSmoothContoursXldSmoothContoursXld, gen_polygons_xldgen_polygons_xldGenPolygonsXldGenPolygonsXldGenPolygonsXld


gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXldGenContourPolygonXld, get_region_contourget_region_contourGetRegionContourGetRegionContourGetRegionContour

See also