intersection_closed_contours_xldintersection_closed_contours_xldIntersectionClosedContoursXldIntersectionClosedContoursXldintersection_closed_contours_xld (算子名称)

名称

intersection_closed_contours_xldintersection_closed_contours_xldIntersectionClosedContoursXldIntersectionClosedContoursXldintersection_closed_contours_xld — Intersect closed contours.

参数签名

intersection_closed_contours_xld(Contours1, Contours2 : ContoursIntersection : : )

Herror intersection_closed_contours_xld(const Hobject Contours1, const Hobject Contours2, Hobject* ContoursIntersection)

Herror T_intersection_closed_contours_xld(const Hobject Contours1, const Hobject Contours2, Hobject* ContoursIntersection)

void IntersectionClosedContoursXld(const HObject& Contours1, const HObject& Contours2, HObject* ContoursIntersection)

HXLDCont HXLDCont::IntersectionClosedContoursXld(const HXLDCont& Contours2) const

static void HOperatorSet.IntersectionClosedContoursXld(HObject contours1, HObject contours2, out HObject contoursIntersection)

HXLDCont HXLDCont.IntersectionClosedContoursXld(HXLDCont contours2)

def intersection_closed_contours_xld(contours_1: HObject, contours_2: HObject) -> HObject

描述

The operator intersection_closed_contours_xldintersection_closed_contours_xldIntersectionClosedContoursXldIntersectionClosedContoursXldIntersectionClosedContoursXldintersection_closed_contours_xld calculates the intersection of the regions enclosed by the contours Contours1Contours1Contours1Contours1contours1contours_1 and Contours2Contours2Contours2Contours2contours2contours_2. The boundaries of this intersection are returned in ContoursIntersectionContoursIntersectionContoursIntersectionContoursIntersectioncontoursIntersectioncontours_intersection.

If the individual input contours are not closed, they are closed automatically by connecting their start and end points.

Internally, first, the regions enclosed by each set of contours (Contours1Contours1Contours1Contours1contours1contours_1 and Contours2Contours2Contours2Contours2contours2contours_2, respectively) are determined as described below. Then, the intersection of these two regions is calculated.

In the following, the two sets of input contours are referred to as boundary sets. A boundary set consists of an arbitrary number of boundaries (the individual contours of Contours1Contours1Contours1Contours1contours1contours_1 and Contours2Contours2Contours2Contours2contours2contours_2, respectively). Each boundary may be convex or concave and self-intersecting. Internal holes may be formed by the nesting of boundaries.

The region enclosed by such a boundary set is defined by the so-called Even-Odd-Rule. Thus, it consists of all points with the following property: The line constructed by connecting the point with another reference point that lies outside of the region has an odd number of intersections with boundaries.

More descriptive, this means that a boundary defines a hole in the region enclosed by another boundary if it lies completely inside that region. Similarly, the overlapping area of two separate boundaries of one boundary set is taken as a "hole", i.e., it does not belong to the region enclosed by the two boundaries. Note that the region enclosed by a boundary does not depend on the orientation of the boundary.

A self-intersecting boundary may be split at the intersection point or it is reordered such that it touches itself at the intersection point. The resulting boundaries are treated as separate boundaries.

The resulting boundaries ContoursIntersectionContoursIntersectionContoursIntersectionContoursIntersectioncontoursIntersectioncontours_intersection are automatically classified into boundaries that enclose regions and boundaries that enclose holes. This information is stored in the global contour attribute 'is_hole'"is_hole""is_hole""is_hole""is_hole""is_hole". For further information about global contour attributes see get_contour_global_attrib_xldget_contour_global_attrib_xldGetContourGlobalAttribXldGetContourGlobalAttribXldGetContourGlobalAttribXldget_contour_global_attrib_xld.

Note that subsequent points whose row and column coordinates differ by less than 1e-06 pixels are considered as one point.

运行信息

参数表

Contours1Contours1Contours1Contours1contours1contours_1 (input_object)  xld_cont(-array) objectHXLDContHObjectHXLDContHobject

Contours enclosing the first region to be intersected.

Contours2Contours2Contours2Contours2contours2contours_2 (input_object)  xld_cont(-array) objectHXLDContHObjectHXLDContHobject

Contours enclosing the second region to be intersected.

ContoursIntersectionContoursIntersectionContoursIntersectionContoursIntersectioncontoursIntersectioncontours_intersection (output_object)  xld_cont(-array) objectHXLDContHObjectHXLDContHobject *

Contours enclosing the intersection.

结果

intersection_closed_contours_xldintersection_closed_contours_xldIntersectionClosedContoursXldIntersectionClosedContoursXldIntersectionClosedContoursXldintersection_closed_contours_xld returns 2 ( H_MSG_TRUE) if all parameters are correct. If necessary, an exception is raised.

可能的前置算子

gen_contour_region_xldgen_contour_region_xldGenContourRegionXldGenContourRegionXldGenContourRegionXldgen_contour_region_xld, zero_crossing_sub_pixzero_crossing_sub_pixZeroCrossingSubPixZeroCrossingSubPixZeroCrossingSubPixzero_crossing_sub_pix, threshold_sub_pixthreshold_sub_pixThresholdSubPixThresholdSubPixThresholdSubPixthreshold_sub_pix

可替代算子

intersectionintersectionIntersectionIntersectionIntersectionintersection

参考其它

difference_closed_contours_xlddifference_closed_contours_xldDifferenceClosedContoursXldDifferenceClosedContoursXldDifferenceClosedContoursXlddifference_closed_contours_xld, symm_difference_closed_contours_xldsymm_difference_closed_contours_xldSymmDifferenceClosedContoursXldSymmDifferenceClosedContoursXldSymmDifferenceClosedContoursXldsymm_difference_closed_contours_xld, union2_closed_contours_xldunion2_closed_contours_xldUnion2ClosedContoursXldUnion2ClosedContoursXldUnion2ClosedContoursXldunion2_closed_contours_xld, intersection_closed_polygons_xldintersection_closed_polygons_xldIntersectionClosedPolygonsXldIntersectionClosedPolygonsXldIntersectionClosedPolygonsXldintersection_closed_polygons_xld

模块

Foundation