关于用vb绘制sin 和cos函数 图形的问题
我用以下代码可以绘出y=sinx图形
但我对其中下列代码不太理解,为什么要Sin(a) * 5,乘以5是做什么?
如果我要绘出y=2sin(3x)+x 和y=2sin(3x)+cosx
语句应该写成Picture1.PSet (a, Sin(3 * a) * 5 + a), vbRed
和Picture1.PSet (a, 2 * Sin(3 * a) * 5 + Cos(a) * 5), vbRed
是否正确
'用For循环绘点,使其按正弦规律变化。步长值很小,使其形成动画效果
For a = -2 * pi To 2 * pi Step pi / 6000
Picture1.PSet (a, Sin(a) * 5), vbRed
Next
绘出y=sinx的范例
通用声明模块:
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