久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4367|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

按鍵精靈自定義公用函數(shù)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:26188 發(fā)表于 2015-2-18 01:24 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
[General]
MacroID=56ea1fce-b961-4037-8ec0-751af08ee19b
SyntaxVersion=1
Description=公用函數(shù)
[Script]
//請(qǐng)?jiān)谙旅鎸懮夏淖映绦蚧蚝瘮?shù)
//寫完保存后,在任一命令庫上點(diǎn)擊右鍵并選擇“刷新”即可
Function RGB轉(zhuǎn)Y(顏色字符串)
Dim R : dim G : dim B
R=clng("&h"&mid(顏色字符串,1,2))
G=clng("&h"&mid(顏色字符串,3,2))
B=clng("&h"&mid(顏色字符串,5,2))
RGB轉(zhuǎn)Y = 0.29 * R + 0.6 * G + 0.11 * B
End function
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Function 找重復(fù)最多的值(數(shù)組字符串)
Dim 主數(shù)組 : Dim 主數(shù)組下標(biāo) : Dim 累加記數(shù)
Dim 重復(fù)數(shù)組字串 : Dim 重復(fù)數(shù)組 : Dim 重復(fù)數(shù)組下標(biāo) : Dim 重復(fù)標(biāo)記 : Dim 重復(fù)數(shù) : Dim 重復(fù)次數(shù)
Dim i : Dim j : Dim k
主數(shù)組=split(數(shù)組字符串,"|")
主數(shù)組下標(biāo)=(ubound(主數(shù)組))-1
重復(fù)數(shù)=0
重復(fù)次數(shù) =0
For i= 0 to 主數(shù)組下標(biāo)-1
    累加記數(shù)=0
    重復(fù)數(shù)組=split(重復(fù)數(shù)組字串,"|")
    重復(fù)數(shù)組下標(biāo)=(ubound(重復(fù)數(shù)組))-1
    For k= 0 to 重復(fù)數(shù)組下標(biāo)
        if 主數(shù)組(i)=重復(fù)數(shù)組(k) then
            重復(fù)標(biāo)記=1
        Else
            重復(fù)標(biāo)記=0
        end if
    Next
    If 重復(fù)標(biāo)記=0 then
        For j = i+1 to 主數(shù)組下標(biāo)
            If 主數(shù)組(i)=主數(shù)組(j) then
                累加記數(shù)=累加記數(shù)+1
            End if
        Next
        If 累加記數(shù)>0 then
            重復(fù)數(shù)組字串=重復(fù)數(shù)組字串&cstr(主數(shù)組(i))&"|"
            If 累加記數(shù)>重復(fù)次數(shù) then
                重復(fù)數(shù) = 主數(shù)組(i)
                重復(fù)次數(shù) = 累加記數(shù)
            end if
        end if
    end if
Next
找重復(fù)最多的值 =重復(fù)數(shù)
end function
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function 找多個(gè)相同圖形(被找圖像寬,被找圖像高,x起點(diǎn),y起點(diǎn),x終點(diǎn),y終點(diǎn),被找起點(diǎn)顏色,被找顏色偏移)
//下文是用來在限定四邊形范圍內(nèi)查找多個(gè)無跌加狀態(tài)正四邊形圖形的算法流程
Dim 相似度變量 : dim 相似度終值 : dim x起點(diǎn)變量 : dim y起點(diǎn)變量 : dim y終點(diǎn)變量
Dim temp0 : dim temp1 : dim x : dim y
相似度變量=.9 : 相似度終值 =.4 : x起點(diǎn)變量 = x起點(diǎn) : y起點(diǎn)變量 = y起點(diǎn) : y終點(diǎn)變量 = y終點(diǎn) : 找多個(gè)相同圖形 = ""
While 相似度變量 > 相似度終值
    temp0=Plugin.Color.FindMutiColor(x起點(diǎn)變量,y起點(diǎn)變量,x終點(diǎn), y終點(diǎn)變量,被找起點(diǎn)顏色,被找顏色偏移,相似度變量)
    temp1 = split(temp0,"|") : x = Clng(temp1(0)) : y = Clng(temp1(1))
    If x > 0 and y > 0 then
        x起點(diǎn)變量 = x + 被找圖像寬 : y起點(diǎn)變量 = y :  y終點(diǎn)變量 = y + 被找圖像高 : 找多個(gè)相同圖形 = 找多個(gè)相同圖形&x&","&y&"|"
        While x起點(diǎn)變量 < x終點(diǎn) - 被找圖像寬 + 1 and y起點(diǎn)變量 < y終點(diǎn) - 被找圖像高 + 1
            temp0=Plugin.Color.FindMutiColor(x起點(diǎn)變量,y起點(diǎn)變量,x終點(diǎn), y終點(diǎn)變量,被找起點(diǎn)顏色,被找顏色偏移,相似度變量)
            temp1 = split(temp0,"|") : x=Clng(temp1(0)) : y=Clng(temp1(1))
            If x > 0 and y > 0 then
                x起點(diǎn)變量 = x + 被找圖像寬 : y起點(diǎn)變量 = y :  y終點(diǎn)變量= y + 被找圖像高 : 找多個(gè)相同圖形 = 找多個(gè)相同圖形&x&","&y&"|"
            Else
                If x起點(diǎn)變量 <> x起點(diǎn)
                    x起點(diǎn)變量 = x起點(diǎn) : y起點(diǎn)變量 = y起點(diǎn)變量 + 1 : y終點(diǎn)變量 = y終點(diǎn)
                Else
                    x起點(diǎn)變量 = x起點(diǎn) - 被找圖像寬 : y起點(diǎn)變量 = y終點(diǎn) - 被找圖像高
                end if
            end if  
        wend
        相似度變量 = 相似度終值
    Else
        相似度變量 = 相似度變量 - .1
    end if
Wend
End function
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Function 區(qū)域內(nèi)找顏色突出的值(x軸起點(diǎn),y軸起點(diǎn),x軸終點(diǎn),y軸終點(diǎn))
Dim 背景色 : Dim 紅值 : Dim 藍(lán)值 : Dim 黃值 : Dim 背景亮度
Dim 采樣色 : Dim 采樣大小: Dim 采樣亮度 : Dim 域值測試 : Dim 域值 : Dim 顏色數(shù)組集
Dim i : Dim x : Dim y : Dim 步進(jìn)
背景色 = array("","","","") : 紅值 = 0 : 藍(lán)值 = 0 : 黃值 = 0
采樣大小 = 32 : 域值 = 33
//取四個(gè)角的色值,作為判斷排除的依據(jù)
背景色(0)=GetPixelColor(x軸起點(diǎn),y軸起點(diǎn)) : 背景色(1)=GetPixelColor(x軸終點(diǎn),y軸起點(diǎn))
背景色(2)=GetPixelColor(x軸起點(diǎn),y軸終點(diǎn)) : 背景色(3)=GetPixelColor(x軸終點(diǎn),y軸終點(diǎn))
For i = 0 TO 3
   紅值 = 紅值 + clng("&H"&(mid(背景色(i),1,2)))
   藍(lán)值 = 藍(lán)值 + clng("&H"&(mid(背景色(i),3,2)))
   黃值 = 黃值 + clng("&H"&(mid(背景色(i),5,2)))   
Next
紅值 = 紅值\4 : 藍(lán)值 = 藍(lán)值\4 : 黃值 = 黃值\4
背景亮度 = (0.29 * 紅值 + 0.6 * 藍(lán)值 + 0.11 * 黃值)\1
//采樣
If (x軸終點(diǎn)-x軸起點(diǎn)) > (y軸終點(diǎn)-y軸起點(diǎn)) then
    步進(jìn) = (x軸終點(diǎn)-x軸起點(diǎn))\32
Else
    步進(jìn) = (y軸終點(diǎn)-y軸起點(diǎn))\32
end if
For y = y軸起點(diǎn) to y軸終點(diǎn) step 步進(jìn)
    For x = x軸起點(diǎn) to x軸終點(diǎn) step 步進(jìn)
        采樣色=GetPixelColor(x,y)
        采樣亮度 = lib.公用函數(shù).RGB轉(zhuǎn)Y(Cstr(采樣色))
        域值測試 = (((abs(采樣亮度-背景亮度))/255)*100)\1
        If 域值測試>域值 then
            顏色數(shù)組集 = 顏色數(shù)組集&cstr(采樣色)&"|"
        end if
    Next
Next
區(qū)域內(nèi)找顏色突出的值 = 顏色數(shù)組集
End function
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Function 查找包絡(luò)(x軸起點(diǎn),y軸起點(diǎn),x軸終點(diǎn),y軸終點(diǎn),顏色)
//2010/05/06 tankli88 zt_script,sub 包絡(luò)范圍 
//在勻色背景中,查找顏色突出區(qū)域的包絡(luò)范圍
//調(diào)用插件從左向右,從上向下查找,查找相似度域值,得到包絡(luò)范圍的最小Y坐標(biāo).第一次查找,x起點(diǎn)變量為包絡(luò)范圍的最小X坐標(biāo),第二次x起點(diǎn)變量為包絡(luò)范圍的最大X坐標(biāo),第三次y起點(diǎn)變量為包絡(luò)范圍的最大Y坐標(biāo)
//查找方式,二分收斂
dim 判斷條件 : dim 相似度變量 : dim x :dim y : dim x變量
Dim x起點(diǎn)變量 : dim x終點(diǎn)變量 : dim y起點(diǎn)變量 : dim y終點(diǎn)變量
Dim x起點(diǎn)常量 : dim x終點(diǎn)常量 : dim y起點(diǎn)常量 : dim y終點(diǎn)常量
判斷條件 = 1 : 相似度變量 = .9
While 判斷條件 <> 0
    FindColorEx x軸起點(diǎn),y軸起點(diǎn),x軸終點(diǎn),y軸終點(diǎn),顏色,0,相似度變量,x,y
    If x > 0 and y > 0
        判斷條件 = 0
        ///////////////
        x變量 = x : y起點(diǎn)常量 = y : x起點(diǎn)變量 = x軸起點(diǎn) : x終點(diǎn)變量 = x起點(diǎn)變量 + (x - x起點(diǎn)變量)\2 :
        While (x變量-x起點(diǎn)變量) > 1
            FindColorEx x起點(diǎn)變量,y起點(diǎn)常量,x終點(diǎn)變量,y軸終點(diǎn),顏色,0,相似度變量,x,y
            If x > 0 and y > 0
                x變量 = x : x終點(diǎn)變量 = x起點(diǎn)變量 + (x - x起點(diǎn)變量)\2
            Else
                x起點(diǎn)變量 = x終點(diǎn)變量 : x終點(diǎn)變量 = x起點(diǎn)變量 + (x變量 - x起點(diǎn)變量)\2
            End If
        wend
        ///////////////
        x起點(diǎn)常量 = x起點(diǎn)變量 + 1 :  x終點(diǎn)變量 = x軸終點(diǎn) : x起點(diǎn)變量 = x起點(diǎn)常量 + (x終點(diǎn)變量 - x起點(diǎn)常量)\2
        While (x終點(diǎn)變量-x起點(diǎn)變量) > 1
            FindColorEx x起點(diǎn)變量,y起點(diǎn)常量,x終點(diǎn)變量,y軸終點(diǎn),顏色,0,相似度變量,x,y
            If x > 0 and y > 0
                x起點(diǎn)變量 = x + (x終點(diǎn)變量 - x)\2
            Else
                x終點(diǎn)變量 = x起點(diǎn)變量 : x起點(diǎn)變量 = x終點(diǎn)變量 - (x終點(diǎn)變量 - x起點(diǎn)常量)\2
            End If
        wend
        ///////////////
        x終點(diǎn)常量 = x起點(diǎn)變量 + 1 : y終點(diǎn)變量 = y軸終點(diǎn) : y起點(diǎn)變量 = y起點(diǎn)常量 + (y終點(diǎn)變量 - y起點(diǎn)常量)\2
        While (y終點(diǎn)變量-y起點(diǎn)變量) > 1
            FindColorEx x起點(diǎn)常量,y起點(diǎn)變量,x終點(diǎn)常量,y終點(diǎn)變量,顏色,0,相似度變量,x,y
            If x > 0 and y > 0
                y起點(diǎn)變量 = y + (y終點(diǎn)變量 - y)\2
            Else
                y終點(diǎn)變量 = y起點(diǎn)變量 : y起點(diǎn)變量 = y終點(diǎn)變量 - (y終點(diǎn)變量 - y起點(diǎn)常量)\2
            End If
        wend
        y終點(diǎn)常量 = y起點(diǎn)變量 + 1
    else
        相似度變量 = 相似度變量 - .1
    End if
wend
查找包絡(luò) = cstr(x起點(diǎn)常量)&"|"&cstr(y起點(diǎn)常量)&"|"&cstr(x終點(diǎn)常量)&"|"&cstr(y終點(diǎn)常量)
End Function
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Function 自動(dòng)查找包絡(luò)(x軸起點(diǎn),y軸起點(diǎn),x軸終點(diǎn),y軸終點(diǎn))
Dim 顏色數(shù)組字符串: dim 顏色
顏色數(shù)組字符串 = lib.公用函數(shù).區(qū)域內(nèi)找顏色突出的值(x軸起點(diǎn),y軸起點(diǎn),x軸終點(diǎn),y軸終點(diǎn))
顏色 = lib.公用函數(shù).找重復(fù)最多的值(顏色數(shù)組字符串)
自動(dòng)查找包絡(luò) = lib.公用函數(shù).查找包絡(luò)(x軸起點(diǎn),y軸起點(diǎn),x軸終點(diǎn),y軸終點(diǎn),顏色)
End function

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久综合99 | 久久久国产精品一区 | 日韩一区二区三区在线视频 | 国产精品99久久久久久www | 999热在线视频 | 日本在线中文 | 成年网站在线观看 | 国产精品.xx视频.xxtv | 日韩中文在线观看 | 韩日精品在线观看 | 九九在线视频 | 特黄视频 | 亚洲精品一区在线观看 | 四虎影音| 国产一区二区三区免费观看视频 | 国产美女特级嫩嫩嫩bbb片 | 福利片一区二区 | 国产 欧美 日韩 一区 | 久久久精品在线 | 国产欧美一区二区在线观看 | 羞视频在线观看 | 精品中文视频 | 一区2区| 午夜寂寞网站 | 日本字幕在线观看 | 一区在线播放 | 久久99国产精一区二区三区 | 欧美三级电影在线播放 | 久久成人午夜 | 91久久夜色 | 亚洲精品粉嫩美女一区 | 精品一区二区在线视频 | 本地毛片 | 久久婷婷国产麻豆91 | 亚洲永久免费观看 | 亚洲国产成人在线 | 久久亚| 在线免费观看视频你懂的 | 久久综合av | 国产欧美精品区一区二区三区 | 精品网 |