• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

返回列表 12345678» / 20
发新话题 回复该主题

[按键精灵安卓版] 【院刊】-【201508期】不了解这些命令怎么编写脚本? [复制链接]

1#

CmpColorEx、FindMultiColor 命令详解



本文按键学院提供技术支持



按键学院交流①群(1群已满):376122403

按键学院交流②群(2群):372671254

按键学院交流③群(3群):170084238

【按键学院】安卓课程(115768679)




在编写安卓脚本的时候最经常用到的就是找图找色的命令了,对于新手来说在可能对于多点找色的命令不熟悉,所以今天小编就给大家详细说说两个常用的多点找色的命令,希望对于新人有所帮助

命令解释

CmpColorEx 命令


命令名称 CmpColorEx
命令功能 比较指定的多个坐标点的颜色,支持多色、偏色、相似度比较
命令参数mul_color:字符串,需要对比的点xy坐标和16进制颜色,格式为(X坐标|Y坐标|16进制颜色),多个颜色用“|”号分隔,需要偏色用“-”号分隔,多个点信息用“,”号分隔,比如"100|200|FFFFFF|123456-000000,300|500|FFFFFF"
sim:双精度浮点数,相似度,取值范围0-1

范例:
  1. If CmpColorEx("300|500|FFFFFF|123456-102030,305|505|FFFFFF",0.9) = 1 Then
  2. TracePrint "全部点颜色相等"
  3. Else
  4. TracePrint "颜色不相等"
  5. End If
复制代码
FindMultiColor 命令

命令名称 FindMultiColor
命令功能 根据指定的多点查找颜色坐标
命令参数x1:整数型,查找区域左上X坐标
y1:整数型,查找区域左上Y坐标
x2:整数型,查找区域右下X坐标
y2:整数型,查找区域右下Y坐标
first_color:要对比的16进制颜色,多个颜色用"|"号分隔,如果需要对比偏色则中间用“-”号分隔,比如"FFFFFF|123456-000000|00FF00-101010"
sim:双精度浮点数,相似度,取值范围0-1offset_color:字符串,偏移颜色
dir:整数型,查找方向.0:表示从左上向右下查找;1:表示从中心往四周查找;2:表示从右下向左上查找;3:表示从左下向右上查找;4:表示从右上向左下查找;
intX:变参指针,返回找到的X坐标
intY:变参指针,返回找到的Y坐标
color:字符串,16进制颜色值,格式为"BBGGRR"

范例:
  1. Dim IntX,IntY
  2. FindMultiColor 0,0,0,0,"FFFFFF-000000","4|1|2F9772-000000|123456-101010,3|7|378757",0,0.9,intX,intY
  3. If intX > -1 Then
  4. TracePrint "找到啦,坐标在"&intX&","&intY
  5. Else
  6. TracePrint "没找到"
  7. End If
复制代码

学会选择合适的命令


这两个命令咋一看,好像都一样,都是多点找色。对于有选择困难症的人来说简直是逼死人啊。

其实呢,仔细观察这两个命令,可以发现有一个最大的区别:CmpColorEx 命令是对比固定坐标点的颜色的;FindMultiColor 命令是用来对比相对第一点的偏移点的颜色的。

CmpColorEx 命令主要参数:"300|500|FFFFFF-000000,305|505|FFFFFF", 其中 “300”和“500”是x和y坐标点,“FFFFFF”则是代表这个坐标点的颜色,“000000”是这个颜色的偏色值,所以这个命令的原理就是逐个的对比这些指定坐标点上的颜色,如果全部相同,则判断为找到这个特征

FindMultiColor 命令主要参数:"FFFFFF-000000","4|1|2F9772-000000,3|7|378757" 其中"FFFFFF-000000"是第一个点的颜色值以及偏色,后面的“4|1|2F9772-000000”则是根据找到的第一点符合要求的颜色坐标来进行的偏移坐标,x轴往右偏移4个像素点,y轴往下偏移1个像素点,然后进行比较该点的颜色是否是“2F9772” ,当全部的偏移点颜色都符合要求的时候就返回找到的第一个点的坐标。

这两种不同的特性就决定了这两个命令的使用环境不同,简单的来说就是
要找固定坐标的特征就用CmpColorEx 命令
要找坐标变化的特征就用FindMultiColor 命令

学会更好的取特征点


多点找色命令知道了,如何选择合适的命令也知道了,那剩下的就是取多点的特征了。新手取多点的特征的时候容易犯下面的这两个毛病
1、认为取的点越多越好。往往一个比较明显的特征也会取将近10个特征点
2、随意取点。在取点的时候不对特征进行简单的分析,随便取了几个点就完事了

这两种方法一般情况下虽然并不会造成多大的事情,但是并不严谨


正确的取特征可以参考以下的要点
1、点数不宜过多,也不宜过少(多点找字除外)。通常是先观察这个特征以外的环境,是否和这个特征容易混淆,如果不易混淆的话,那只要取4-6个点即可,反之可以相应的增加取点的数量
2、取点的时候需要注意一点,尽量不要取边缘化点,尽量选取一些周围有相同或者相似颜色的坐标点。因为需要考虑到不同分辨率下对于画面的拉伸程度可能不同,如果过于边缘化的话兼容性会降低


取点过多,一定程度上会影响效率:
您所在的用户组无法下载或查看附件

取点过随意,导致容易出现误判:
您所在的用户组无法下载或查看附件

正确的取点不同点的颜色尽量做到有差异,容易形成唯一的特征:
您所在的用户组无法下载或查看附件



后记

这次的多点找色命令就介绍到这里,如果大家有什么疑问或者建议,可以在这个帖子里留言说明。同时大家希望能在院刊中看到什么样的教程,也可以回帖哦~~


院刊目录
showtopic.aspx?topicid=549014&forumpage=1&page=1



 



谢谢大家阅读,记得给小编送支花花 ! 顺手点个


[tr=rgb(143, 188, 143)]

按键精灵实战班开始报名啦!

安卓按键相关院刊

1、时间:7月1日——7月25日接受报名
2、时长:每周二、周四、周六
3、地点:实战班
4、项目准备:安装按键精灵2014,安装镇魔曲、按键精灵会员卡(报名会提供3个月)。
5、关于项目课程的安排:周一至周天白天可自行学习与实践,学院会提供为学员准备助教与老师进行解答,周二、周四、周六晚上8点开始授课,请各位学员到场学习。
6、学费费用:512(人民币)
7、本次实战课程全国招募66人,名额有限。

安卓按键精灵实战教学——天天酷跑(1)
showtopic.aspx?topicid=577597&forumpage=1&page=1

安卓实战教学第二波——天天酷跑(2)
showtopic.aspx?topicid=577909&forumpage=1&page=1

安卓实战——让脚本适应多种分辨率
showtopic.aspx?topicid=578339&forumpage=1&page=1
点我进入按键学院报名啦招生细节进群咨询招生办主任





    已有1评分我要评分查看所有评分

    本主题由 超级版主 瑞祥幽冥狼 于 2023/3/26 17:50:00 执行 审核帖子 操作
    2#

    dddddddddddddddddddddddd

    3#

    dddddddd

    4#

    iuyi5ryuirtutdyjertyue5yu

    5#

    1686131646

    6#

    11111111111111

    7#

    若需需要需要需要

    8#

    学习学习

    9#

    666666666666666666666

    10#

    学习学习

    11#

    1111111

    12#

    看看

    13#

    少时诵诗书

    14#

    cguxufxufx

    15#

    看看学习一下啊

    16#

    "3D3B35-101010"

    17#

    看看!!!!!

    18#

    来学习啦!~!

    19#

    11111111。。。

    20#

    222222

    发新话题 回复该主题