Image.FindMultiColor 多点找色返回全部坐标
🎯功能
根据多点找色条件返回所有的坐标。
📜语法
结果 = Image.FindMultiColor(左上角x, 左上角y, 右下角x, 右下角y, 第一点颜色, 偏移颜色组, 方向, 相似度)
📥参数
参数 | 数据类型 | 解释 |
---|---|---|
左上角x | 数值型 | 查找区域范围的左上角x坐标,区域范围全为0 时表示全屏查找。 |
左上角y | 数值型 | 查找区域范围的左上角y坐标,区域范围全为0 时表示全屏查找。 |
右下角x | 数值型 | 查找区域范围的右下角x坐标,区域范围全为0 时表示全屏查找。 |
右下角y | 数值型 | 查找区域范围的右下角y坐标,区域范围全为0 时表示全屏查找。 |
第一点颜色 | 字符串 | 要查找的16进制颜色,格式为“BBGGRR”,多个颜色用“|”隔开,偏色使用“-”隔开,比如"FFFFFF-101010|123456"。 |
偏移颜色组 | 字符串 | 相对与第一个颜色坐标点的偏移颜色组,推荐用抓抓工具快速生成,详见下方备注。 |
方向 | 数值型 | 查找方向,0 表示从左上到右下;1 表示从中心往四周;2 表示从右下到左上;3 表示从左下到右上;4 表示从右上到左下。 |
相似度 | 数值型 | 小数,颜色相似度,取值范围0到1之间,越高越相似。 |
📤返回
二维数组
,返回所有找到的坐标组成的二维数组,格式为(索引, 坐标)
,详见例子。
💡示例
Dim 坐标表 = Image.FindMultiColor(0,0,0,0,"D97700","-34|10|D97700,0|27|D97700",0,0.9)
Dim 最大下标 = UBound(坐标表)
TracePrint "一共找到了", 最大下标 + 1, "个点"
If 最大下标 > -1 Then
For i = 0 To 最大下标
TracePrint 坐标表(i, 0) //输出找到的第i个x坐标
TracePrint 坐标表(i, 1) //输出找到的第i个y坐标
Next
Else
TracePrint "没有找到符合条件的点"
End If
📘备注
- 与FindMultiColor 多点找色最大的区别是本命令返回所有符合条件的点。
- 查找的指定颜色点数量尽量多于3个以上,以免造成数据溢出。