Skip to content

intersection_contours_xldIntersectionContoursXldIntersectionContoursXldintersection_contours_xldintersection_contours_xld🔗

Short description🔗

intersection_contours_xldIntersectionContoursXldIntersectionContoursXldintersection_contours_xldintersection_contours_xld — Calculate the intersection points of two XLD contours

Signature🔗

intersection_contours_xld( xld_cont Contour1, xld_cont Contour2, string IntersectionType, out point.y Row, out point.x Column, out integer IsOverlapping )void IntersectionContoursXld( const HObject& Contour1, const HObject& Contour2, const HTuple& IntersectionType, HTuple* Row, HTuple* Column, HTuple* IsOverlapping )static void HOperatorSet.IntersectionContoursXld( HObject contour1, HObject contour2, HTuple intersectionType, out HTuple row, out HTuple column, out HTuple isOverlapping )def intersection_contours_xld( contour_1: HObject, contour_2: HObject, intersection_type: str ) -> Tuple[Sequence[float], Sequence[float], int]

def intersection_contours_xld_s( contour_1: HObject, contour_2: HObject, intersection_type: str ) -> Tuple[float, float, int]Herror intersection_contours_xld( const Hobject Contour1, const Hobject Contour2, const char* IntersectionType, double* Row, double* Column, Hlong* IsOverlapping )

Herror T_intersection_contours_xld( const Hobject Contour1, const Hobject Contour2, const Htuple IntersectionType, Htuple* Row, Htuple* Column, Htuple* IsOverlapping )

Description🔗

intersection_contours_xldIntersectionContoursXld calculates the intersection points of the XLD Contour1contour1contour_1 and XLD Contour2contour2contour_2 which, if any, are returned in (Rowrowrow,Columncolumncolumn). The value in IntersectionTypeintersectionTypeintersection_type defines the way to calculate the intersections points. By setting IntersectionTypeintersectionTypeintersection_type = 'self'"self", only the self intersections within both contours are returned, i.e., the intersections within Contour1contour1contour_1 and XLD Contour2contour2contour_2. For IntersectionTypeintersectionTypeintersection_type = 'mutual'"mutual", only the intersections between both contours are taken into account. The default value is IntersectionTypeintersectionTypeintersection_type = 'all'"all". In this case both, the self and the mutual intersections are returned in Rowrowrow,Columncolumncolumn). If parts of the contours overlap in more than one point IsOverlappingisOverlappingis_overlapping returns the value 1, otherwise 0 is returned. IsOverlappingisOverlappingis_overlapping is set with regard to both the self and mutual overlap, regardless of the setting in IntersectionTypeintersectionTypeintersection_type. In case of a mutual overlap, the endpoints of the mutual segment are returned in (Rowrowrow,Columncolumncolumn).

Execution information🔗

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🔗

Contour1contour1contour_1 (input_object) xld_cont → objectHObjectHXLDContHObjectHobject

First XLD contour.

Contour2contour2contour_2 (input_object) xld_cont → objectHObjectHXLDContHObjectHobject

Second XLD contour.

IntersectionTypeintersectionTypeintersection_type (input_control) string → (string)HTuple (HString)HTuple (string)strHtuple (char*)

Intersection points to be returned.

Default: 'all'"all"
List of values: 'all', 'mutual', 'self'"all", "mutual", "self"

Rowrowrow (output_control) point.y(-array) → (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Row coordinates of the intersection points.

Columncolumncolumn (output_control) point.x(-array) → (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Column coordinates of the intersection points.

IsOverlappingisOverlappingis_overlapping (output_control) integer → (integer)HTuple (Hlong)HTuple (int / long)intHtuple (Hlong)

Does a part of a contour lie above another contour part?

Result🔗

If the parameters are valid, the operator intersection_contours_xldIntersectionContoursXld returns the value 2 (H_MSG_TRUE).

Combinations with other operators🔗

Combinations

Alternatives

intersection_segmentsIntersectionSegments, intersection_segment_contour_xldIntersectionSegmentContourXld

See also

intersection_segment_lineIntersectionSegmentLine, intersection_linesIntersectionLines, intersection_line_contour_xldIntersectionLineContourXld

Module🔗

Foundation