用VB繪制正弦動畫曲線

發表于:2007-07-14來源:作者:點擊數: 標簽:
VB 提供了繪圖的基本方法,如Pset、Line、Circle,能夠繪出點、直線、圓等基本圖形,但沒有提供繪曲線的方法。其實,我們可以靈活運用基本繪圖方法,來繪出所需要的曲線,甚至達到動畫的效果。 一、VB坐標系介紹 VB里有三種坐標系,屏幕坐標系、窗體坐標系和
  VB提供了繪圖的基本方法,如Pset、Line、Circle,能夠繪出點、直線、圓等基本圖形,但沒有提供繪曲線的方法。其實,我們可以靈活運用基本繪圖方法,來繪出所需要的曲線,甚至達到動畫的效果。

  一、VB坐標系介紹
  VB里有三種坐標系,屏幕坐標系、窗體坐標系和窗體內的對象坐標系,這三種坐標系都是以其左上角為坐標原點,與平常使用的幾何坐標系不一致,我們繪圖時感到不習慣。VB允許編程人員自定義坐標系,根據需要定義坐標原點的位置。

  自定義坐標系的方法是Scale,語法格式:

  Scale (X1,Y1) - (X2,Y2)

  其中: X1是繪圖區域左上角的橫坐標;

  Y1是繪圖區域左上角的縱坐標;

  X2是繪圖區域右下角的橫坐標;

  Y2是繪圖區域右下角的縱坐標。

  例如:Scale (-320,240) - (320,-240) 定義了繪圖區域大小為640×480,坐標原點(0,0)在繪圖區域中心。

  二、繪制正弦動畫曲線
  啟動VB6,新建標準EXE工程,添加一個PictureBox控件,兩個CommandButton控件到窗體,其Caption屬性值分別設為正弦曲線和結束。

  雙擊Command1,打開代碼編輯器窗口,相應事件的代碼如下:

  通用聲明模塊:

  Const pi = 3.14159

  Dim a

  Private Sub Command1_Click() '畫正弦曲線

  '首先清除picture1內的圖形

   Picture1.Cls

   'Scale方法設定用戶坐標系,坐標原點在Picture1中心

   Picture1.ScaleMode = 0

   Picture1.ScaleMode = 3

   Picture1.Scale (-10, 10)- (10, -10)

   '設置繪線寬度

   Picture1.DrawWidth = 1

   '繪坐標系的X軸及箭頭線

   Picture1.Line (-10, 0)-(10, 0), vbBlue

   Picture1.Line (9, 0.5)-(10, 0), vbBlue

   Picture1.Line -(9, -0.5), vbBlue

   Picture1.ForeColor = vbBlue

   Picture1.Print "X"

   '繪坐標系的Y軸及箭頭線

   Picture1.Line (0, 10)-(0, -10), vbBlue

   Picture1.Line (0.5, 9)-(0, 10), vbBlue

   Picture1.Line -(-0.5, 9), vbBlue

   Picture1.Print "Y"

   '指定位置顯示原點O

   Picture1.CurrentX = 0.5

   Picture1.CurrentY = -0.5

   Picture1.Print "O"

   '重設繪線寬度

   Picture1.DrawWidth = 2

   '用For循環繪點,使其按正弦規律變化。步長值很小,使其形成動畫效果

   For a = -2 * pi To 2 * pi Step pi / 6000

   Picture1.PSet (a, Sin(a) * 5), vbRed

   Next

   '指定位置顯示描述文字

   Picture1.CurrentX = pi / 2

   Picture1.CurrentY = -7

   Picture1.ForeColor = vbBlack

   Picture1.Print "正弦曲線示意"

  End Sub

  運行后看效果。

  以上程序代碼在VB 6.0,Windows 98中調試通過。 

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97