函数:findColor 在图上找色

函数功能:在图上找色

函数方法

point,msg = image.findColor(img,table,degree, x1, y1, x2, y2)

参数 类型 字段 说明
img usedata 必填 需要操作的图片对象
table table 必填 找色参数
degree number 选填 寻找精度,范围:0 ~ 100,当是 100 时为完全匹配,
不写或者小于 0 默认为 0,超过 100 默认为 100
x1 number 选填 图片对象的找色区域左上角顶点屏幕横坐标,不写默认为 0
y1 number 选填 图片对象的找色区域左上角顶点屏幕纵坐标,不写默认为 0
x2 number 选填 图片对象的找色区域右下角顶点屏幕横坐标,不写默认为屏幕宽度
y2 number 选填 图片对象的找色区域右下角顶点屏幕纵坐标,不写默认为屏幕高度

table 参数

参数 类型 字段 说明
find_all boolean 选填 true - 多个返回值写入表中,格式为 {};
不写默认 false - 返回 1 个坐标
max_results number 选填 设置返回值坐标数量上限,不写默认为 100
max_miss number 选填 设置忽略返回值坐标数量上限,不写默认为 0
array table 必填 颜色数组
返回值 类型 说明
point table/number find_all 为 true 时以 table 形式返回所有符合条件的参照点的坐标;
为 false 时返回横坐标,找不到返回 -1
msg table/number find_all 为 true,table 为空时返回失败原因;
为 false 时返回纵坐标,找不到返回 -1

函数用例:

local image = require("tsimg")  
snapshot("findColor.png", 0, 0, 500, 500)
--将文件转换为图片对象
local newImage,msg = image.loadFile(userPath() .. "/res/findColor.png") 
if image.is(newImage) then
    local point, msg = image.findColor(newImage,
        {
            find_all = true,
            max_results = 3,
            max_miss = 2,
            {42, 56, 0x120325},
            {124,123, 0xffffff},
            {74, 154, 0xffe167},
        }
        ,90,10, 10, 500, 500);
    if #point ~= 0 then  
        for var = 1,#point do
            dialog(point[var].x..":"..point[var].y)
        end
    else
        dialog("未找到颜色")
    end
else
    dialog("未找到颜色")
end

注意事项:

  • max_miss 的数量不能超过(#array - 1)
  • Android 仅支持引擎版本 v3.0.1 及其以上,仅支持标准版,暂不支持企业版。

  • 安卓普通版需要登录账号、购买 VIP 并且在调用过程中账号需要保持登录状态否则会导致调用失效。

  • iOS 仅支持专业版,暂不支持企业版。

  • Android 真机与模拟器 tsimg.so 文件不同,需要按照设备类型进行下载。

  • 点击 使用方法tsimg.so 下载 查看使用方法及下载地址。

Copyright 北京帮你玩科技有限公司 2020 all right reserved,powered by Gitbook该文章修订时间: 2020-02-02 14:04:44

results matching ""

    No results matching ""