test_region_pointtest_region_pointTestRegionPointTestRegionPointtest_region_point (Operator)
Name
test_region_pointtest_region_pointTestRegionPointTestRegionPointtest_region_point
— Test if the region contains a given point.
Signature
def test_region_point(regions: HObject, row: MaybeSequence[Union[int, float]], column: MaybeSequence[Union[int, float]]) -> int
Description
If an array of regions and one test point is provided,
test_region_pointtest_region_pointTestRegionPointTestRegionPointtest_region_point
tests if at least one input region of
RegionsRegionsRegionsregionsregions
contains the single test point given in
(RowRowRowrowrow
,ColumnColumnColumncolumncolumn
). If this is the case, IsInsideIsInsideIsInsideisInsideis_inside
is
set to TRUE, else to FALSE. Alternatively, if a single region and several
test points are provided, test_region_pointtest_region_pointTestRegionPointTestRegionPointtest_region_point
tests if at least
one of the test points (given in RowRowRowrowrow
,ColumnColumnColumncolumncolumn
) is contained
in the input region given in RegionsRegionsRegionsregionsregions
.
If this is the case, IsInsideIsInsideIsInsideisInsideis_inside
is set to TRUE, otherwise it is set
to FALSE. If (RowRowRowrowrow
,ColumnColumnColumncolumncolumn
) are real-valued, rounding is
performed internally since regions are pixel precise.
To test, which points exactly are contained in a region, use the
operator test_region_pointstest_region_pointsTestRegionPointsTestRegionPointstest_region_points
.
Attention
The test pixel is not contained in an empty region
(no pixel of the region corresponds to the pixel).
If all regions are empty IsInsideIsInsideIsInsideisInsideis_inside
is set to
FALSE.
In case of an empty input object (empty tuple) RegionsRegionsRegionsregionsregions
and
set_system('no_object_result','true')set_system("no_object_result","true")SetSystem("no_object_result","true")SetSystem("no_object_result","true")set_system("no_object_result","true")
, an empty tuple is
returned in IsInsideIsInsideIsInsideisInsideis_inside
. If
set_system('no_object_result','false')set_system("no_object_result","false")SetSystem("no_object_result","false")SetSystem("no_object_result","false")set_system("no_object_result","false")
was set, an exception is
raised.
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
RegionsRegionsRegionsregionsregions
(input_object) region(-array) →
objectHRegionHObjectHObjectHobject
Region(s) to be examined.
RowRowRowrowrow
(input_control) point.y(-array) →
HTupleMaybeSequence[Union[int, float]]HTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)
Row index of the test pixel(s).
Default:
100
ColumnColumnColumncolumncolumn
(input_control) point.x(-array) →
HTupleMaybeSequence[Union[int, float]]HTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)
Column index of the test pixel(s).
Number of elements:
Row == Column
Default:
100
IsInsideIsInsideIsInsideisInsideis_inside
(output_control) integer →
HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Boolean result value.
Complexity
If F is the area of one region, N is the number of regions, and M is
the number of test points, the runtime complexity is
O(ln(sqrt(F)) * N) in the case of one test point and several regions and
O(ln(sqrt(F)) * M) in the case of one region and several test points.
Result
The operator test_region_pointtest_region_pointTestRegionPointTestRegionPointtest_region_point
returns the value 2 (
H_MSG_TRUE)
if the parameters are correct.
The behavior in case of an empty object is
set via the operator set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)
.
If necessary, an exception is raised.
Possible Predecessors
thresholdthresholdThresholdThresholdthreshold
,
regiongrowingregiongrowingRegiongrowingRegiongrowingregiongrowing
,
connectionconnectionConnectionConnectionconnection
Alternatives
union1union1Union1Union1union1
,
intersectionintersectionIntersectionIntersectionintersection
,
area_centerarea_centerAreaCenterAreaCenterarea_center
,
test_region_pointstest_region_pointsTestRegionPointsTestRegionPointstest_region_points
See also
select_region_pointselect_region_pointSelectRegionPointSelectRegionPointselect_region_point
,
test_region_pointstest_region_pointsTestRegionPointsTestRegionPointstest_region_points
Module
Foundation