Skip to content

select_xld_pointSelectXldPointSelectXldPointselect_xld_pointselect_xld_point🔗

Short description🔗

select_xld_pointSelectXldPointSelectXldPointselect_xld_pointselect_xld_point — Choose all contours or polygons containing a given point.

Signature🔗

select_xld_point( xld XLDs, out xld DestXLDs, point.y Row, point.x Column )void SelectXldPoint( const HObject& XLDs, HObject* DestXLDs, const HTuple& Row, const HTuple& Column )static void HOperatorSet.SelectXldPoint( HObject XLDs, out HObject destXLDs, HTuple row, HTuple column )def select_xld_point( xlds: HObject, row: Union[float, int], column: Union[float, int] ) -> HObject

Herror select_xld_point( const Hobject XLDs, Hobject* DestXLDs, double Row, double Column )

Herror T_select_xld_point( const Hobject XLDs, Hobject* DestXLDs, const Htuple Row, const Htuple Column )

HXLD HXLD::SelectXldPoint( const HTuple& Row, const HTuple& Column ) const

HXLD HXLD::SelectXldPoint( double Row, double Column ) const

HXLDCont HXLDCont::SelectXldPoint( const HTuple& Row, const HTuple& Column ) const

HXLDCont HXLDCont::SelectXldPoint( double Row, double Column ) const

HXLDPoly HXLDPoly::SelectXldPoint( const HTuple& Row, const HTuple& Column ) const

HXLDPoly HXLDPoly::SelectXldPoint( double Row, double Column ) const

HXLDPara HXLDPara::SelectXldPoint( const HTuple& Row, const HTuple& Column ) const

HXLDPara HXLDPara::SelectXldPoint( double Row, double Column ) const

HXLDModPara HXLDModPara::SelectXldPoint( const HTuple& Row, const HTuple& Column ) const

HXLDModPara HXLDModPara::SelectXldPoint( double Row, double Column ) const

HXLDExtPara HXLDExtPara::SelectXldPoint( const HTuple& Row, const HTuple& Column ) const

HXLDExtPara HXLDExtPara::SelectXldPoint( double Row, double Column ) const

HXLD HXLD.SelectXldPoint( HTuple row, HTuple column )

HXLD HXLD.SelectXldPoint( double row, double column )

HXLDCont HXLDCont.SelectXldPoint( HTuple row, HTuple column )

HXLDCont HXLDCont.SelectXldPoint( double row, double column )

HXLDPoly HXLDPoly.SelectXldPoint( HTuple row, HTuple column )

HXLDPoly HXLDPoly.SelectXldPoint( double row, double column )

HXLDPara HXLDPara.SelectXldPoint( HTuple row, HTuple column )

HXLDPara HXLDPara.SelectXldPoint( double row, double column )

HXLDModPara HXLDModPara.SelectXldPoint( HTuple row, HTuple column )

HXLDModPara HXLDModPara.SelectXldPoint( double row, double column )

HXLDExtPara HXLDExtPara.SelectXldPoint( HTuple row, HTuple column )

HXLDExtPara HXLDExtPara.SelectXldPoint( double row, double column )

Description🔗

The operator select_xld_pointSelectXldPoint selects all contours or polygons from XLDsXLDsxlds containing the test point (Rowrowrow,Columncolumncolumn). If the contours or polygons overlap, more than one contour or polygon might contain the point. In this case, all these contours or polygons are returned. If no contour or polygon contains the indicated point, an empty object is returned. It is assumed that the contours or polygons are closed. If this is not the case, select_xld_pointSelectXldPoint will artificially close the contours or polygons. Nevertheless, it is strongly recommended to pass only meaningful and closed contours or polygons in XLDsXLDsxlds by calling select_contours_xldSelectContoursXld with the parameter 'closed'"closed" before calling select_xld_pointSelectXldPoint.

Attention🔗

If the test point is on the border of a contour or polygon, select_xld_pointSelectXldPoint will deliver unpredictable results, i.e., the contour or polygon may be or may not be added to DestXLDsdestXLDsdest_xlds, depending on arbitrary factors such as how the polygon is oriented with respect to the coordinate system. Note further that for points in the near proximity of the contour or polygon sides, a reliable classification is practically impossible because of numerical inaccuracies.

Execution information🔗

Execution information
  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).

  • Multithreading scope: global (may be called from any thread).

  • Automatically parallelized on tuple level.

Parameters🔗

XLDsXLDsxlds (input_object) xld(-array) → objectHObjectHXLDHObjectHobject

Contours or polygons to be examined.

DestXLDsdestXLDsdest_xlds (output_object) xld(-array) → objectHObjectHXLDHObjectHobject *

All contours or polygons containing the test point.

Rowrowrow (input_control) point.y → (real / integer)HTuple (double / Hlong)HTuple (double / int / long)Union[float, int]Htuple (double / Hlong)

Line coordinate of the test point.

Default: 100.0100.0

Columncolumncolumn (input_control) point.x → (real / integer)HTuple (double / Hlong)HTuple (double / int / long)Union[float, int]Htuple (double / Hlong)

Column coordinate of the test point.

Default: 100.0100.0

Result🔗

The operator select_xld_pointSelectXldPoint returns the value 2 (H_MSG_TRUE) if the parameters are correct. The behavior in case of empty input (no input contours or polygons available) is set via the operator set_system('no_object_result',<Result>). If necessary an exception is raised.

Combinations with other operators🔗

Combinations

Possible predecessors

select_contours_xldSelectContoursXld, close_contours_xldCloseContoursXld, threshold_sub_pixThresholdSubPix

Alternatives

test_xld_pointTestXldPoint

Module🔗

Foundation