gen_region_contour_xldgen_region_contour_xldGenRegionContourXldGenRegionContourXldgen_region_contour_xld (Operator)
Name
gen_region_contour_xldgen_region_contour_xldGenRegionContourXldGenRegionContourXldgen_region_contour_xld
— Create a region from an XLD contour.
Signature
Herror gen_region_contour_xld(const Hobject Contour, Hobject* Region, const char* Mode)
Herror T_gen_region_contour_xld(const Hobject Contour, Hobject* Region, const Htuple Mode)
def gen_region_contour_xld(contour: HObject, mode: str) -> HObject
Description
gen_region_contour_xldgen_region_contour_xldGenRegionContourXldGenRegionContourXldgen_region_contour_xld
creates a region RegionRegionRegionregionregion
from a
subpixel XLD contour ContourContourContourcontourcontour
. The contour is sampled
according to the Bresenham algorithm and influenced by the parameter
'neighborhood'"neighborhood""neighborhood""neighborhood""neighborhood" of the operator set_systemset_systemSetSystemSetSystemset_system
. Open contours
are closed before converting them to regions. Finally, the parameter
ModeModeModemodemode
defines whether the region is filled up ('filled'"filled""filled""filled""filled")
or returned by its contour ('margin'"margin""margin""margin""margin").
Please note that the coordinates of the contour points are rounded
to their nearest integer pixel coordinates during the conversion.
This may lead to unexpected results when passing the contour
obtained by the operator gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldgen_contour_region_xld
to
gen_region_contour_xldgen_region_contour_xldGenRegionContourXldGenRegionContourXldgen_region_contour_xld
: When setting ModeModeModemodemode
of
gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldgen_contour_region_xld
to 'border'"border""border""border""border", the input region
of gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldgen_contour_region_xld
and the output region of
gen_region_contour_xldgen_region_contour_xldGenRegionContourXldGenRegionContourXldgen_region_contour_xld
differ. For example, let us assume
that the input region of gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldgen_contour_region_xld
consists of
the single pixel (1,1). Then, the resulting contour that is
obtained when calling gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldgen_contour_region_xld
with
ModeModeModemodemode
set to 'border'"border""border""border""border" consists of the five points
(0.5,0.5), (0.5,1.5), (1.5,1.5), (1.5,0.5), and (0.5,0.5).
Consequently, when passing this contour again to
gen_region_contour_xldgen_region_contour_xldGenRegionContourXldGenRegionContourXldgen_region_contour_xld
, the resulting region consists of the
points (1,1), (1,2), (2,2), and (2,1).
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
ContourContourContourcontourcontour
(input_object) xld_cont(-array) →
objectHXLDContHObjectHObjectHobject
Input contour(s).
RegionRegionRegionregionregion
(output_object) region(-array) →
objectHRegionHObjectHObjectHobject *
Created region(s).
ModeModeModemodemode
(input_control) string →
HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Fill mode of the region(s).
Default:
'filled'
"filled"
"filled"
"filled"
"filled"
Suggested values:
'filled'"filled""filled""filled""filled", 'margin'"margin""margin""margin""margin"
Possible Predecessors
gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXldgen_contour_polygon_xld
,
gen_contour_polygon_rounded_xldgen_contour_polygon_rounded_xldGenContourPolygonRoundedXldGenContourPolygonRoundedXldgen_contour_polygon_rounded_xld
Alternatives
gen_region_polygongen_region_polygonGenRegionPolygonGenRegionPolygongen_region_polygon
,
gen_region_polygon_xldgen_region_polygon_xldGenRegionPolygonXldGenRegionPolygonXldgen_region_polygon_xld
See also
set_systemset_systemSetSystemSetSystemset_system
Module
Foundation