Script 1.8.0

compareColorEx (重载二)

原型:

compareColorEx(multipleColor, sim)

描述:

同时比较指定的多个坐标点的颜色,支持多色、颜色范围、相似度比较

参数:

multipleColor: 二维数组,需要对比的点 xy 坐标和 16 进制颜色,格式为[[X 坐标,Y 坐标,16 进制颜色],[X 坐标,Y 坐标,16 进制颜色],...], 多个颜色用"|"号分隔,需要颜色范围用"-"号分隔,比如" 0xffffff|0xaabbcc-0x000000, 0xffffff "。
Sim: 相似度,仅作用于单个颜色,对颜色范围无用。对于指定的单个颜色,如果屏幕中目标像素的颜色与指定颜色差异在相似范围以内,则认为该颜色与目标颜色相同。相似度取值范围为 [0.0, 1.0]。

返回值:

布尔型。false: 代表没找到;true: 代表找到

示例:
var mulColor = new Array();
var unite1 = new Array();
var sim = 1;
var x = 220;
var y = 220;
var color = "0x35516e|0x324f6d";
var unite1 = [x, y, color]
mulColor[0] = unite1;
var device = Device.getMain();
var found = device.compareColorEx(mulColor, sim);
if (!found) {
  print(lastError());
}

也可以使用下面这种更简单的方法:
var colRules = [[3,5,"0x000000"], [4,6,"0x000f00"], [9,225,"0x000000"]];
print(colRules);

var ret = device.compareColorEx(colRules, sim);
if (!ret) {
  print("Not all colors are the same");
  print(lastError());
} else {
  print("All colors are the same");
}