intersection_segment_contour_xldintersection_segment_contour_xldIntersectionSegmentContourXldIntersectionSegmentContourXld (Operator)
Name
intersection_segment_contour_xldintersection_segment_contour_xldIntersectionSegmentContourXldIntersectionSegmentContourXld
— Calculate the intersection points of a segment and an XLD contour
Signature
Herror intersection_segment_contour_xld(const Hobject Contour, double SegmentRow1, double SegmentColumn1, double SegmentRow2, double SegmentColumn2, double* Row, double* Column, Hlong* IsOverlapping)
Herror T_intersection_segment_contour_xld(const Hobject Contour, const Htuple SegmentRow1, const Htuple SegmentColumn1, const Htuple SegmentRow2, const Htuple SegmentColumn2, Htuple* Row, Htuple* Column, Htuple* IsOverlapping)
Description
intersection_segment_contour_xldintersection_segment_contour_xldIntersectionSegmentContourXldIntersectionSegmentContourXldIntersectionSegmentContourXld
calculates the intersection points
of a segment and an XLD ContourContourContourContourcontour
. The segment is defined by its
endpoints (SegmentRow1SegmentRow1SegmentRow1SegmentRow1segmentRow1
,SegmentColumn1SegmentColumn1SegmentColumn1SegmentColumn1segmentColumn1
) and
(SegmentRow2SegmentRow2SegmentRow2SegmentRow2segmentRow2
,SegmentColumn2SegmentColumn2SegmentColumn2SegmentColumn2segmentColumn2
).
The intersection points, if any, are returned in
(RowRowRowRowrow
,ColumnColumnColumnColumncolumn
).
If the segment and the XLD contour have a part in common
IsOverlappingIsOverlappingIsOverlappingIsOverlappingisOverlapping
returns the value 1, otherwise 0 is returned.
In this case the endpoints of the mutual
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 →
objectHXLDContHXLDContHobject
XLD contour.
SegmentRow1SegmentRow1SegmentRow1SegmentRow1segmentRow1
(input_control) point.y →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Row coordinate of the first point of the segment.
SegmentColumn1SegmentColumn1SegmentColumn1SegmentColumn1segmentColumn1
(input_control) point.x →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Column coordinate of the first point of the segment.
SegmentRow2SegmentRow2SegmentRow2SegmentRow2segmentRow2
(input_control) point.y →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Row coordinate of the second point of the segment.
SegmentColumn2SegmentColumn2SegmentColumn2SegmentColumn2segmentColumn2
(input_control) point.x →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Column coordinate of the second point of the segment.
RowRowRowRowrow
(output_control) point.y(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Row coordinates of the intersection points.
ColumnColumnColumnColumncolumn
(output_control) point.x(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Column coordinates of the intersection points.
IsOverlappingIsOverlappingIsOverlappingIsOverlappingisOverlapping
(output_control) integer →
HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Do the segment and the XLD contour have a part in common?
Result
If the parameters are valid, the operator
intersection_segment_contour_xldintersection_segment_contour_xldIntersectionSegmentContourXldIntersectionSegmentContourXldIntersectionSegmentContourXld
returns the value 2 (H_MSG_TRUE).
Alternatives
intersection_segmentsintersection_segmentsIntersectionSegmentsIntersectionSegmentsIntersectionSegments
,
intersection_contours_xldintersection_contours_xldIntersectionContoursXldIntersectionContoursXldIntersectionContoursXld
See also
intersection_segment_lineintersection_segment_lineIntersectionSegmentLineIntersectionSegmentLineIntersectionSegmentLine
,
intersection_linesintersection_linesIntersectionLinesIntersectionLinesIntersectionLines
,
intersection_line_contour_xldintersection_line_contour_xldIntersectionLineContourXldIntersectionLineContourXldIntersectionLineContourXld
Module
Foundation