select_region_pointselect_region_pointSelectRegionPointSelectRegionPointselect_region_point(算子)

名称

select_region_pointselect_region_pointSelectRegionPointSelectRegionPointselect_region_point — 选择包含给定像素的所有区域。

签名

select_region_point(Regions : DestRegions : Row, Column : )

Herror select_region_point(const Hobject Regions, Hobject* DestRegions, const Hlong Row, const Hlong Column)

Herror T_select_region_point(const Hobject Regions, Hobject* DestRegions, const Htuple Row, const Htuple Column)

void SelectRegionPoint(const HObject& Regions, HObject* DestRegions, const HTuple& Row, const HTuple& Column)

HRegion HRegion::SelectRegionPoint(Hlong Row, Hlong Column) const

static void HOperatorSet.SelectRegionPoint(HObject regions, out HObject destRegions, HTuple row, HTuple column)

HRegion HRegion.SelectRegionPoint(int row, int column)

def select_region_point(regions: HObject, row: int, column: int) -> HObject

描述

算子 select_region_pointselect_region_pointSelectRegionPointSelectRegionPointSelectRegionPointselect_region_point selects all regions from RegionsRegionsRegionsRegionsregionsregions containing the test pixel (RowRowRowRowrowrow,ColumnColumnColumnColumncolumncolumn), i.e.:

注意

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.

执行信息

参数

RegionsRegionsRegionsRegionsregionsregions (输入对象)  region-array objectHRegionHObjectHRegionHobject

Regions to be examined.

DestRegionsDestRegionsDestRegionsDestRegionsdestRegionsdest_regions (输出对象)  region-array objectHRegionHObjectHRegionHobject *

All regions containing the test pixel.

RowRowRowRowrowrow (输入控制)  point.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Line index of the test pixel.

默认值: 100

ColumnColumnColumnColumncolumncolumn (输入控制)  point.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Column index of the test pixel.

默认值: 100

示例(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

示例(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);

示例(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

示例(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

示例(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

复杂度

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).

结果

算子 select_region_pointselect_region_pointSelectRegionPointSelectRegionPointSelectRegionPointselect_region_point 在参数正确时返回值 2 ( H_MSG_TRUE )。 当输入为空(无可用输入区域)时,可设置行为通过算子 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>)set_system("no_object_result",<Result>)。如有必要,则抛出异常。

可能的前趋

thresholdthresholdThresholdThresholdThresholdthreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingRegiongrowingregiongrowing, connectionconnectionConnectionConnectionConnectionconnection

替代

test_region_pointtest_region_pointTestRegionPointTestRegionPointTestRegionPointtest_region_point

另见

get_mbuttonget_mbuttonGetMbuttonGetMbuttonGetMbuttonget_mbutton, get_mpositionget_mpositionGetMpositionGetMpositionGetMpositionget_mposition

模块

基础