爱体育

 
 加入
查看: 222|回复: 13

调用大漠插件区域找色findcolor函数的用法颜色格式怎样用?-爱体育

[复制链接]
发表于 2023-10-9 18:39:03 | 显示全部楼层 |
本帖最后由 hlzxcjx 于 2023-10-9 22:17 编辑

au3的找色函数pixelgetcolor 效率太低,而区域找色pixelsearch经常定位不准,于是尝试用大漠插件,发现大漠插件getcolor函数与au3一样效率低,再尝试大漠插件的区域找色函数findcolor,却不懂其颜色格式"rrggbb-drdgdb"的用法,望各位赐教!
大漠插件:
  1. #autoit3wrapper_usex64=n
  2. runwait(@comspec & ' /c regsvr32 /s ' & 'dm.dll', '', @sw_hide)
  3. global $dm = objcreate("dm.dmsoft")
  4. if isobj($dm) then
  5.         $ver = $dm.ver()
  6.         consolewrite('当前大漠插件版本:' & $ver & @crlf)
  7. else
  8.         msgbox(64, '提示:', '注册大漠插件失败!!!')
  9.         exit
  10. endif

  11. ;---------------------------------------------------这个与au3同样慢!
  12. ;for $x=0 to 100
  13. ;$color = $dm.getcolor($x,600)
  14. ;mousemove($x,600,0)
  15. ;next
  16. ;msgbox(0,0,$color)
  17. ;---------------------------------------------------这个与au3同样慢!

  18. global $intx, $inty
  19. $var = $dm.findcolor(@desktopwidth / 2, @desktopheight / 3, @desktopwidth * 4 / 5, @desktopheight / 2, 0, 1.0, 1, $intx, $inty);查找区域内的黑色,黑色的颜色值为 0 ,这行代码有误!求更正!
  20. ;mousemove($intx,$inty, 0)
  21. msgbox(0, 0, "x坐标:" & $intx & "  y坐标:" & $inty)
复制代码
$var = $dm.findcolor(@desktopwidth / 2, @desktopheight / 3, @desktopwidth * 4 / 5, @desktopheight / 2, 0, 0.1, 1, $intx, $inty);查找区域内的黑色,黑色的颜色值为 0 ,这行代码有误!求更正!


函数简介:
查找指定区域内的颜色,颜色格式"rrggbb-drdgdb",注意,和按键的颜色格式相反
函数原型:

long findcolor(x1, y1, x2, y2, color, sim, dir,intx,inty)

参数定义:

x1:
区域的左上x坐标
y1:区域的左上y坐标
x2:区域的右下x坐标
y2:区域的右下y坐标
color:颜色 格式为"rrggbb-drdgdb",比如"123456-000000|aabbcc-202020"
sim:相似度,取值范围0.1-1.0
dir:查找方向 0: 从左到右,从上到下
             1: 从左到右,从下到上
             2: 从右到左,从上到下
             3: 从右到左,从下到上
             4:从中心往外查找
             5: 从上到下,从左到右
             6: 从上到下,从右到左
             7: 从下到上,从左到右
             8: 从下到上,从右到左
intx:返回x坐标
inty:返回y坐标

返回值:

0:
没找到
1:找到

示例:

dm_ret = dm.findcolor(0,0,2000,2000,"123456-000000|aabbcc-030303|ddeeff-202020",1.0,0,intx,inty)
if intx >= 0 and inty >= 0 then
    messagebox "
找到"
end if


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2023-10-9 20:23:20 | 显示全部楼层
搜到的 b站/video/bv1ox4y1r7sx
发表于 2023-10-9 21:27:06 | 显示全部楼层
黑色的颜色值改为字符串 '000000-000000' 试试
 楼主| 发表于 2023-10-9 21:55:26 | 显示全部楼层
afan 发表于 2023-10-9 21:27
黑色的颜色值改为字符串 '000000-000000' 试试

也不行!总是定位在(0,0)处!但设置的搜索范围不包括(0,0),难道是变量$intx, $inty参数的写法不对?
发表于 2023-10-9 22:05:51 | 显示全部楼层
hlzxcjx 发表于 2023-10-9 21:55
也不行!总是定位在(0,0)处!但设置的搜索范围不包括(0,0),难道是变量$intx, $inty参数的写法不对 ...

@desktopwidth / 2, @desktopheight / 3, @desktopwidth * 4 / 5  估计这些不行,要用整数,如int 或 round(@desktopheight / 3)
 楼主| 发表于 2023-10-9 22:15:02 | 显示全部楼层
afan 发表于 2023-10-9 22:05
@desktopwidth / 2, @desktopheight / 3, @desktopwidth * 4 / 5  估计这些不行,要用整数,如int 或 rou ...

改为:
$var = $dm.findcolor(10, 10, 500 , 500 ,  '000000-000000' , 1.0, 1, $intx, $inty)
也不行!
发表于 2023-10-11 13:02:13 | 显示全部楼层
au3和按键精灵测试 都是要600多毫秒


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2023-10-11 17:18:48 | 显示全部楼层
格式对应rgb-偏色,不要用眼睛去判断,打开你的测试工具点选来生成,相似度别上来就是1.0,根据平时使用经验设在0.8左右,还有最最重要的dpi要注意
 楼主| 发表于 2023-10-11 22:38:38 | 显示全部楼层
3131210 发表于 2023-10-11 13:02
au3和按键精灵测试 都是要600多毫秒

我的win11新系统测试约为1670毫秒!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2023-10-11 23:12:34 | 显示全部楼层
繁星 发表于 2023-10-11 17:18
格式对应rgb-偏色,不要用眼睛去判断,打开你的测试工具点选来生成,相似度别上来就是1.0,根据平时使用经 ...

多谢指教!
 楼主| 发表于 2023-10-11 23:29:49 | 显示全部楼层
换了au3版本,原来的代码没问题了!原来用的是autoit3_3.3.6.1,换成autoit v3.3.16.1后没出错了!只是autoit v3.3.16.1刚下载就被360查杀了!不过pixelgetcolor还是慢,pixelsearch定位仍不准(偶尔不准),大漠的区域找色准确。测试pixelsearch定位不准确的是全屏幕从右往左找黑色时出现的,找其他色貌似不会,从左往右找任何色都不会。从右往左时,起点超过屏幕的3/4就定位不准。

大家可测试一下这个函数:
  1. sleep(3000)
  2. $var = pixelsearch(@desktopwidth * 4 / 5, @desktopheight / 3, @desktopwidth / 5, @desktopheight * 2 / 3, 0)
  3. mousemove($var[0], $var[1], 0)
  4. msgbox(0, 0, "ok")
复制代码
发表于 2023-10-15 05:55:53 | 显示全部楼层
hlzxcjx 发表于 2023-10-11 23:29
换了au3版本,原来的代码没问题了!原来用的是autoit3_3.3.6.1,换成autoit v3.3.16.1后没出错了!只是auto ...

把dpi缩放调到100%试试。。
 楼主| 发表于 2023-10-15 19:27:44 | 显示全部楼层
fybhwsx 发表于 2023-10-15 05:55
把dpi缩放调到100%试试。。

一样!这个应该与dpi无关!
发表于 昨天 17:45 | 显示全部楼层
大神们经验,小本本记下。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

||小黑屋|爱体育 ( ) "));

gmt 8, 2023-12-7 01:12 , processed in 0.164194 second(s), 21 queries .

powered by x3.5

© 2001-2023 .

快速回复 返回列表
网站地图