Operator Reference

intersection_line_contour_xldintersection_line_contour_xldIntersectionLineContourXldIntersectionLineContourXldintersection_line_contour_xld (Operator)

intersection_line_contour_xldintersection_line_contour_xldIntersectionLineContourXldIntersectionLineContourXldintersection_line_contour_xld — Calculate the intersection points of a line and an XLD contour

Signature

intersection_line_contour_xld(Contour : : LineRow1, LineColumn1, LineRow2, LineColumn2 : Row, Column, IsOverlapping)

Herror intersection_line_contour_xld(const Hobject Contour, double LineRow1, double LineColumn1, double LineRow2, double LineColumn2, double* Row, double* Column, Hlong* IsOverlapping)

Herror T_intersection_line_contour_xld(const Hobject Contour, const Htuple LineRow1, const Htuple LineColumn1, const Htuple LineRow2, const Htuple LineColumn2, Htuple* Row, Htuple* Column, Htuple* IsOverlapping)

void IntersectionLineContourXld(const HObject& Contour, const HTuple& LineRow1, const HTuple& LineColumn1, const HTuple& LineRow2, const HTuple& LineColumn2, HTuple* Row, HTuple* Column, HTuple* IsOverlapping)

static void HOperatorSet.IntersectionLineContourXld(HObject contour, HTuple lineRow1, HTuple lineColumn1, HTuple lineRow2, HTuple lineColumn2, out HTuple row, out HTuple column, out HTuple isOverlapping)

def intersection_line_contour_xld(contour: HObject, line_row_1: Union[float, int], line_column_1: Union[float, int], line_row_2: Union[float, int], line_column_2: Union[float, int]) -> Tuple[Sequence[float], Sequence[float], int]

def intersection_line_contour_xld_s(contour: HObject, line_row_1: Union[float, int], line_column_1: Union[float, int], line_row_2: Union[float, int], line_column_2: Union[float, int]) -> Tuple[float, float, int]

Description

intersection_line_contour_xldintersection_line_contour_xldIntersectionLineContourXldIntersectionLineContourXldintersection_line_contour_xld calculates the intersection points of a line and an XLD ContourContourContourcontourcontour. The line is defined by the points (LineRow1LineRow1LineRow1lineRow1line_row_1,LineColumn1LineColumn1LineColumn1lineColumn1line_column_1) and (LineRow2LineRow2LineRow2lineRow2line_row_2,LineColumn2LineColumn2LineColumn2lineColumn2line_column_2). The intersection points, if any, are returned in (RowRowRowrowrow,ColumnColumnColumncolumncolumn). If a part of the XLD contour lies on the line IsOverlappingIsOverlappingIsOverlappingisOverlappingis_overlapping returns the value 1, otherwise 0 is returned. In this case the endpoints of the XLD segment are returned in (RowRowRowrowrow,ColumnColumnColumncolumncolumn).

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 objectHXLDContHObjectHObjectHobject

XLD contour.

LineRow1LineRow1LineRow1lineRow1line_row_1 (input_control)  point.y HTupleUnion[float, int]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Row coordinate of the first point of the line.

LineColumn1LineColumn1LineColumn1lineColumn1line_column_1 (input_control)  point.x HTupleUnion[float, int]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Column coordinate of the first point of the line.

LineRow2LineRow2LineRow2lineRow2line_row_2 (input_control)  point.y HTupleUnion[float, int]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Row coordinate of the second point of the line.

LineColumn2LineColumn2LineColumn2lineColumn2line_column_2 (input_control)  point.x HTupleUnion[float, int]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Column coordinate of the second point of the line.

RowRowRowrowrow (output_control)  point.y(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Row coordinates of the intersection points.

ColumnColumnColumncolumncolumn (output_control)  point.x(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Column coordinates of the intersection points.

IsOverlappingIsOverlappingIsOverlappingisOverlappingis_overlapping (output_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Does a part of the XLD contour lie on the line?

Result

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

Alternatives

intersection_segment_lineintersection_segment_lineIntersectionSegmentLineIntersectionSegmentLineintersection_segment_line

See also

intersection_segmentsintersection_segmentsIntersectionSegmentsIntersectionSegmentsintersection_segments, intersection_linesintersection_linesIntersectionLinesIntersectionLinesintersection_lines, intersection_segment_contour_xldintersection_segment_contour_xldIntersectionSegmentContourXldIntersectionSegmentContourXldintersection_segment_contour_xld, intersection_contours_xldintersection_contours_xldIntersectionContoursXldIntersectionContoursXldintersection_contours_xld

Module

Foundation