VBS腳本調用WIA.Vector對象繪製位圖

VBS腳本能夠經過調用WIA.Vector對象畫圖,使用該對象的Add方法能夠把vb中的顏色逐個座標畫到位圖中。bash

下面這段代碼,是打印方程X(n+1)=cot(X(n)),x(1)=1迭代20次後的圖像(座標有調整,每一個小格並不表明單位1)spa

WScript.Echo "計算X(n+1)=cot(X(n)),x(1)=1 迭代20次"

'沙盤
Dim V(300,300)

'初始值
Dim F
F = 1

'迭代前的初始點
Dim TX, TY
For TX = -3 To 3 
    For TY = -3 To 3
        V(50 + TX, 150 + TY) = 1
    Next
Next

WScript.Echo "初始值 " & F

'迭代公式20次
Dim Counter
For Counter = 1 To 20 
     
    F = Cos(F) / Sin(F)
    WScript.Echo "第 " & Counter & " 次迭代,值爲 " & F 
    
    '沙盤描點
    For TX = -3 To 3 
        For TY = -3 To 3
            V(50 + Counter * 10 + TX, 150 + Eval(F) * 3 + TY) = 1
        Next
    Next
    
Next

WScript.Echo "計算完畢"

'建立WIA對象
Set Ve = CreateObject("WIA.Vector")

'繪製圖像
Dim X,Y,I,J
For Y = 1 To 300
    For X = 1 To 300
        '描點
        If V(X, Y) = 1 Then 
            Ve.Add vbRed
        '橫縱軸
        ElseIf X = 50 Or Y = 150 Then
            Ve.Add vbBlue
        '橫縱座標輔助線
        ElseIf X Mod 10 = 0 Or Y Mod 10 = 0 Then
            Ve.Add vbBlack
        '留白
        Else
            Ve.Add vbWhite
        End If
    Next
Next

Ve.ImageFile(300,300).SaveFile "result.bmp"

須要注意的是,在同一個座標下不要屢次調用WIA.Vector的Add方法,不然腳本運行會拋出異常code

經過下面的批處理命令(BAT)腳本,能夠一鍵調用上面的VBS腳本。對象

@ECHO OFF

CSCRIPT test.vbs //NOLOGO
PAUSE

運行截圖以下:ip

繪製出的圖像result.bmp以下:it

ENDclass

相關文章
相關標籤/搜索