TC官方合作论坛

标题: 请教高手找图和如果句型合并如何运用 [打印本页]

作者: jiangxinxian93    时间: 2012-6-3 14:52
标题: 请教高手找图和如果句型合并如何运用
请教高手几个问题,看下面脚本,这是我大概按照我的理念写的,请求高手帮我修改下,本人在线等,如果解决了马上采纳。。
问题一:得到的结果是不是找到>0,找不到就<0?
问题二:想返回上面重新找图用什么句型 ?
问题三:我想提高搜图的准确度,是不是先把图片背景涂成黑色?色偏有什么用,是用要找图片里面的文字色偏,还是用图片的背景颜色作为色偏?

整型 图片X坐标,图片Y坐标,图像序号
图像序号=图像.找图(0,0,1440,900,"d:\\start.bmp",#000000,1.0,0,图片X坐标,图片Y坐标)  

如果(结果>=0)//得到的结果是不是找到>0,找不到就<0?
   辅助.等待(3000)
   鼠标.移动(图片X坐标+15,图片Y坐标+15)   
   辅助.等待(2000)
   鼠标.左键单击(1)
否则(结果<0)
   //这里想返回上面重新找图用什么句型

作者: cylhb    时间: 2012-6-3 17:11
图像序号=-1  //找不到
图像序号=0// 找到第一张图 =1  第2张图 (找多图的时候.)

想返回上面的话,可以使用循环语句吧.TC并没有GOTO.
搜图准确度.主要在于你截的图吧.如果是一张固定不变的图,就连色偏都不需要,直接这样找就OK了
作者: kfyygy    时间: 2012-6-3 17:14
找不到<0
  重复找图可以这样:
循环(真)
找图。。。。。。
如果找到
跳出
如果结束
循环结束
作者: kitty2008du    时间: 2012-6-3 17:16
一\一张找到是等于0的
二\如果找不到返回你可以用下面的方法
整型 图片X坐标,图片Y坐标,图像序号
循环( 图片X坐标<=0)
图像序号=图像.找图(0,0,1440,900,"d:\\start.bmp",#000000,1.0,0,图片X坐标,图片Y坐标)  
//你自已可以加一个延时
循环结束
上面的代码就可以循环找了,你也可以用跳出!
循环(真)
整型 图片X坐标,图片Y坐标,图像序号
图像序号=图像.找图(0,0,1440,900,"d:\\start.bmp",#000000,1.0,0,图片X坐标,图片Y坐标)  
如果(图像序号>=0).
//找到
跳出
如果结束
第三个问题比较麻烦!找图精确度的问题根你自已做的位图是有很大关系的,你说的色偏,你可以现解成误差!
比如说我们在123456这几个数中找5,色偏为1,哪么就把456这个三数全都认为是正确的,也就是基数是5误差为1
不知道这么说你能不能明白,推荐你去看看关于色偏的教程!
还有就是透明图的做,TC里认为,位图四个角的颜色如果一样,哪么就认为这个色为透明色,
由于篇幅有限,我也只能这么说了,推荐你去看看相关的教程!
作者: linzijian2    时间: 2012-6-3 18:30
楼上很详细。。。我都不好意思来抢采纳了。。。图片的精准性,一般我认为如果要找的图片不过任何角度,任何位置,都不会变的话,原图是最准确了,如果会改变,比如图片的透明背景会看到下面一层图片的话,那么就找比较有标志性的位置,一定不会变的,做成透明图,TC认为四角为同一颜色的图片即为透明图。。色偏的话,这个我一般都不会去处理,基本都用0色偏。。。楼上说的很好呢,色偏就差不多是误差啦,你误差越大那么图片的精准度当然也就越低。。。
作者: 冷月无痕    时间: 2012-6-3 21:43
循环(图像.找图(0,0,1440,900,"d:\\start.bmp",#000000,1.0,0,图片X坐标,图片Y坐标)<0)
辅助.等待(20)
循环结束
辅助.等待(3000)
鼠标.移动(图片X坐标+15,图片Y坐标+15)   
辅助.等待(2000)
鼠标.左键单击(1)
当图片不存在的时候循环找图,当图片出现找到图以后执行循环结束后面的代码,加延时是避免卡死

这是利用了循环的条件来判断,精简了代码,比起用如果否则简单明了




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1