select_region_point select_region_point SelectRegionPoint SelectRegionPoint (Operator)
Name
select_region_point select_region_point SelectRegionPoint SelectRegionPoint
— Choose all regions containing a given pixel.
Signature
Description
The operator select_region_point select_region_point SelectRegionPoint SelectRegionPoint SelectRegionPoint
selects all regions from Regions Regions Regions Regions regions
containing the test pixel (Row Row Row Row row
,Column Column Column Column column
), i.e.:
Attention
If the regions overlap more than one region might contain the pixel.
In this case all these regions are returned.
If no region contains the indicated pixel the
empty tuple (= no region) is returned.
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
Regions Regions Regions Regions regions
(input_object) region-array →
object HRegion HRegion Hobject
Regions to be examined.
DestRegions DestRegions DestRegions DestRegions destRegions
(output_object) region-array →
object HRegion HRegion Hobject *
All regions containing the test pixel.
Row Row Row Row row
(input_control) point.y →
HTuple HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Line index of the test pixel.
Default value: 100
Column Column Column Column column
(input_control) point.x →
HTuple HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Column index of the test pixel.
Default value: 100
Example (HDevelop)
read_image(Image,'fabrik')
regiongrowing(Image,Seg,3,3,5,0)
dev_set_color('red')
dev_set_draw('margin')
Button := 1
while (Button == 1)
get_mbutton(WindowHandle,Row,Column,Button)
select_region_point(Seg,Single,Row,Column)
dev_display(Image)
dev_display(Single)
endwhile
Example (C)
read_image(&Image,"fabrik");
regiongrowing(Image,&Seg,3,3,5.0,0);
do {
printf("Select the region with the mouse (End right button \n");
get_mbutton(WindowHandle,&Row,&Column,&Button);
select_region_point(Seg,&Single,Row,Column);
clear(Single);
} while(Button != 4);
Example (HDevelop)
read_image(Image,'fabrik')
regiongrowing(Image,Seg,3,3,5,0)
dev_set_color('red')
dev_set_draw('margin')
Button := 1
while (Button == 1)
get_mbutton(WindowHandle,Row,Column,Button)
select_region_point(Seg,Single,Row,Column)
dev_display(Image)
dev_display(Single)
endwhile
Example (HDevelop)
read_image(Image,'fabrik')
regiongrowing(Image,Seg,3,3,5,0)
dev_set_color('red')
dev_set_draw('margin')
Button := 1
while (Button == 1)
get_mbutton(WindowHandle,Row,Column,Button)
select_region_point(Seg,Single,Row,Column)
dev_display(Image)
dev_display(Single)
endwhile
Example (HDevelop)
read_image(Image,'fabrik')
regiongrowing(Image,Seg,3,3,5,0)
dev_set_color('red')
dev_set_draw('margin')
Button := 1
while (Button == 1)
get_mbutton(WindowHandle,Row,Column,Button)
select_region_point(Seg,Single,Row,Column)
dev_display(Image)
dev_display(Single)
endwhile
Complexity
If F is the area of the region and N is the number of regions, the
mean runtime complexity is O(ln(sqrt(F)) * N).
Result
The operator select_region_point select_region_point SelectRegionPoint SelectRegionPoint SelectRegionPoint
returns the value 2 (H_MSG_TRUE)
if the parameters are correct.
The behavior in case of empty input (no input regions available) 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>) SetSystem("no_object_result",<Result>)
.
If necessary an exception is raised.
Possible Predecessors
threshold threshold Threshold Threshold Threshold
,
regiongrowing regiongrowing Regiongrowing Regiongrowing Regiongrowing
,
connection connection Connection Connection Connection
Alternatives
test_region_point test_region_point TestRegionPoint TestRegionPoint TestRegionPoint
See also
get_mbutton get_mbutton GetMbutton GetMbutton GetMbutton
,
get_mposition get_mposition GetMposition GetMposition GetMposition
Module
Foundation