今天,我們將介紹Scriptor腳本編程應用。
一、Scriptor簡介
SciSmart智能視覺軟件支持腳本編寫功能,通過SciSmart智能視覺軟件的腳本可以完成包括變量復雜運算、獲取日期和時間、對結果進行排序、對文件操作(新建、刪除、txt文件內容讀寫)等操作。
圖1 界面圖
二、全局變量
按照以下步驟,添加全局變量:菜單欄->設置->變量設置。
圖2 變量設置界面圖
1.全局變量說明:
●全局變量在流程圖中的各模塊有效。
●全局變量名稱以Vars.為開頭。(注:Vars.為系統自動添加,無需手動添加,如添加名稱為n的全局變量,流程圖顯示為Vars.n。)
●變量名稱支持中文。
●添加變量時,可以對變量進行初始化及備注。
2. 變量類型說明:
●N:數值型(Number)可以進行數值運算的數據類型。
●S:字符型(String)由數字、字母、下劃線組成的一串字符。
●B:布爾型(Boolean)非true(真),即false(假)。
●P:點類型(Point)其成員有兩個,即 Point.x 和 Point.y。
●N[ ]:數值型數組。
●S[ ]:字符型數組。
●B[ ]:布爾型數組。
●P[ ]:點類型數組。
3.使用“腳本”算子進行賦值:
圖3 “腳本”算子賦值示例圖
三、局部變量
1.局部變量:這里所指的局部變量是僅在當前腳本有效的變量,其他腳本算子或其他模塊無法調用的變量。
2.var語句:
(1)聲明變量:
●var variable
●var variable2=value
(2)參數:
●variable,variable2為被聲明的變量的名字。
●value為賦給變量的初始化值。
3.局部變量示例:下例闡明了var語句的用法,需要注意的是,使用var語句來聲明變量,初始值的數據類型決定變量的數據類型。
圖4 var語句用法示例圖
4.注釋符號:在SciScriptor中,有以下兩種形式的注釋:
●單行注釋:單行注釋以雙斜線“//”開頭。
●多行注釋:多行注釋以“/*”開始,以“*/”結束。
四、運算符
常用運算符:
●加法運算符(+)
●減法運算符(-)
●乘法運算符(*)
●除法運算符(/)
●==運算符:比較兩個表達式是否相等
●&&運算符:對兩個表達式執行邏輯與運算
●||運算符:對兩個表達式執行邏輯或運算
●++運算符:變量值加1
●<運算符:比較兩個表達式,看是否一個小于另一個
●<=運算符:比較一個表達式的值是否小于等于另一個表達式的值
●其他運算符
五、控制語句
1.條件語句:(1)if…else語句:根據一個表達式的值,有條件地執行一組語句。
if(condition)
{statement1}
else
{statement2}
圖5 if...else語句用法示例圖
(2)switch語句:當指定的表達式的值與某個標簽匹配時,即執行相應的一個或多個語句。
switch(expression) {
case label :
statementlist
case label :
statementlist
case label :
statementlist
...
default :
statementlist
}
圖6 switch語句用法示例圖
3. 循環語句:(1)for語句:只要指定條件為true都執行語句塊,例如:
for(initialization; test; increment)
{
statements
}
(2)while語句:在循環第一次被執行前檢查expression。每當expression滿足條件,則執行一次該循環;如果expression不滿足條件,循環結束。例如:
while(expression)
{
statements
}
圖7 for語句、while語句用法示例圖
3.自定義函數:function,例如:
function Demo()
{
statements
}
圖8 自定義函數function用法示例圖
六、內部對象
1. 內部對象類型:
(1) Math對象:是一個固有對象,可以提供基本數學函數和常數,如:
●Math.abs(number):返回數字參數number的絕對值。
●Math.cos(number):返回值為其數字參數的余弦值。
●Math.PI:返回圓的周長與其直徑的比值,約等于3.141592653589793。
(2)Date對象:啟用基本存儲器并取得日期和時間。
(3)Array對象:提供對創建任何數據類型的數組的支持。
(4)String對象:可用于處理或格式化文本字符串以及確定和定位字符串中的子字符串,如:
●length屬性(String):返回String對象的長度。
●split方法:將一個字符串分割為子字符串,然后將結果作為字符串數組返回。
●substr方法:返回一個從指定位置開始的指定長度的子字符串。
2.內部對象使用演示與查找:
(1)內部對象使用演示:
圖9 內部對象使用示例圖
(2)內部對象查找:
●方式一:使用JScript中文參考手冊快速查找。
圖10 使用JScript中文參考手冊查找示例圖
●方式二:上網查找。
11 上網查找示例圖
七、注意事項
1.檢查腳本的方式:
圖12 腳本檢查方式示例圖
2.腳本數據的淺拷貝和深拷貝:
圖13 腳本數據的淺拷貝和深拷貝示例圖
以上為OPT小講堂之SciSmart智能視覺軟件操作培訓第十六課的內容,如對課程有任何問題歡迎在留言區留言。