'在屏幕上输出阿基米德曲线 Private Const PI = 3.141593 Private Sub Form_Load() Me.Scale (-600, -600)-(600, 600) Me.Show Me.DrawWidth = 3 Me.AutoRedraw = True Dim t As Single Dim r As Single Dim x As Single Dim y As SingleFor t = 0 To 20 * PI Step 0.01 r = 10 * (1 + t) x = r * Cos(t) y = r * Sin(t) PSet (x, y), vbRed NextEnd Sub
我不是高手,给你个画抛物线的,在picture里画,想改成在屏幕上画,换成screenConst pi = 3.14159 Dim a Private Sub Command1_Click() '首先清除picture1内的图形 Picture1.Cls 'Scale方法设定用户坐标系,坐标原点在Picture1中心 Picture1.ScaleMode = 0 Picture1.ScaleMode = 3 Picture1.Scale (-20, 20)-(20, -20) '设置绘线宽度 Picture1.DrawWidth = 1 '绘坐标系的X轴及箭头线 Picture1.Line (-20, 0)-(20, 0), vbBlue Picture1.Line (18, 1)-(20, 0), vbBlue Picture1.Line -(18, -1), vbBlue Picture1.ForeColor = vbBlue Picture1.Print "X" '绘坐标系的Y轴及箭头线 Picture1.Line (0, 20)-(0, -20), vbBlue Picture1.Line (1, 18)-(0, 20), vbBlue Picture1.Line -(-1, 18), vbBlue Picture1.Print "Y" '指定位置显示原点O Picture1.CurrentX = 1 Picture1.CurrentY = -1 Picture1.Print "O" '重设绘线宽度 Picture1.DrawWidth = 2 '用For循环绘点,使其按抛物线规律变化。步长值很小,使之形成动画效果 For a = -10 To 10 Step pi / 6000 Picture1.PSet (a, a ^ 2 / 5), vbRed Next a '指定位置显示描述文字 Picture1.CurrentX = pi / 2 Picture1.CurrentY = -7 Picture1.ForeColor = vbBlack Picture1.Print "抛物线示意" End Sub
Option Explicit Const pi = 3.1415926 Private Type point2d x As Single y As Single End Type Dim pt(2) As point2d Private Sub Command1_Click() pt(0).x = -1500 pt(0).y = 1000 pt(1).x = 1500 pt(1).y = 500 pt(2).x = 1000 pt(2).y = -1500 '首先清除picture1内的图形 Picture1.Cls Picture1.Scale (-2000, 2000)-(2000, -2000) '设置绘线宽度 Picture1.DrawWidth = 1 DrawTriangle pt Timer1.Interval=100 Timer1.Enabled = True Picture1.ForeColor = vbBlue End Sub Private Sub ChangCoord(ByRef pt() As point2d, Angle As Single) Dim i As Long, x As Single, y As Single For i = 0 To UBound(pt) x = pt(i).x * Cos(Angle) - pt(i).y * Sin(Angle) y = pt(i).y * Cos(Angle) + pt(i).x * Sin(Angle) pt(i).x = x pt(i).y = y Next i End SubPrivate Sub DrawTriangle(ByRef pt() As point2d) If UBound(pt) <> 2 Then Exit Sub Picture1.Line (pt(0).x, pt(0).y)-(pt(1).x, pt(1).y), vbBlue Picture1.Line -(pt(2).x, pt(2).y), vbBlue Picture1.Line -(pt(0).x, pt(0).y), vbBlueEnd Sub Private Sub Timer1_Timer() ChangCoord pt, pi / 50 Picture1.Cls DrawTriangle ptEnd Sub 放三个控件,pictruebox ,timer,command
googled
http://zhidao.baidu.com/question/73147707.html?fr=qrl&cid=867&index=1&fr2=query
'在屏幕上输出阿基米德曲线
Private Const PI = 3.141593
Private Sub Form_Load()
Me.Scale (-600, -600)-(600, 600)
Me.Show
Me.DrawWidth = 3
Me.AutoRedraw = True
Dim t As Single
Dim r As Single
Dim x As Single
Dim y As SingleFor t = 0 To 20 * PI Step 0.01
r = 10 * (1 + t)
x = r * Cos(t)
y = r * Sin(t)
PSet (x, y), vbRed
NextEnd Sub
Dim a
Private Sub Command1_Click()
'首先清除picture1内的图形
Picture1.Cls
'Scale方法设定用户坐标系,坐标原点在Picture1中心
Picture1.ScaleMode = 0
Picture1.ScaleMode = 3
Picture1.Scale (-20, 20)-(20, -20)
'设置绘线宽度
Picture1.DrawWidth = 1
'绘坐标系的X轴及箭头线
Picture1.Line (-20, 0)-(20, 0), vbBlue
Picture1.Line (18, 1)-(20, 0), vbBlue
Picture1.Line -(18, -1), vbBlue
Picture1.ForeColor = vbBlue
Picture1.Print "X"
'绘坐标系的Y轴及箭头线
Picture1.Line (0, 20)-(0, -20), vbBlue
Picture1.Line (1, 18)-(0, 20), vbBlue
Picture1.Line -(-1, 18), vbBlue
Picture1.Print "Y"
'指定位置显示原点O
Picture1.CurrentX = 1
Picture1.CurrentY = -1
Picture1.Print "O"
'重设绘线宽度
Picture1.DrawWidth = 2
'用For循环绘点,使其按抛物线规律变化。步长值很小,使之形成动画效果
For a = -10 To 10 Step pi / 6000
Picture1.PSet (a, a ^ 2 / 5), vbRed
Next a
'指定位置显示描述文字
Picture1.CurrentX = pi / 2
Picture1.CurrentY = -7
Picture1.ForeColor = vbBlack
Picture1.Print "抛物线示意"
End Sub
Const n = 3.14159 / 4
Private Sub Form_Load()
Picture1.Width = Picture1.Height
Picture1.AutoRedraw = True
Picture1.Scale (-100, -100)-(100, 100)
Picture1.Line (-70, 70)-(80, 70), vbRed
Picture1.Line -(-20, -50), vbRed
Picture1.Line -(-70, 70), vbRed
End Sub
'X =x*cos(n)+y*sin(n)
'Y =y*cos(n)-x*sin(n)
Private Sub Picture1_Click()
Picture1.Cls
X1 = -70 * Cos(n) + 70 * Sin(n)
Y1 = 70 * Cos(n) + 70 * Sin(n)
X2 = 80 * Cos(n) + 70 * Sin(n)
Y2 = 70 * Cos(n) - 80 * Sin(n)
X3 = -20 * Cos(n) - 50 * Sin(n)
Y3 = -50 * Cos(n) + 20 * Sin(n)
Picture1.Line (X1, Y1)-(X2, Y2), vbRed
Picture1.Line -(X3, Y3), vbRed
Picture1.Line -(X1, Y1), vbRed
End Sub
Const pi = 3.1415926
Private Type point2d
x As Single
y As Single
End Type
Dim pt(2) As point2d
Private Sub Command1_Click()
pt(0).x = -1500
pt(0).y = 1000
pt(1).x = 1500
pt(1).y = 500
pt(2).x = 1000
pt(2).y = -1500
'首先清除picture1内的图形
Picture1.Cls
Picture1.Scale (-2000, 2000)-(2000, -2000)
'设置绘线宽度
Picture1.DrawWidth = 1
DrawTriangle pt
Timer1.Interval=100
Timer1.Enabled = True
Picture1.ForeColor = vbBlue
End Sub
Private Sub ChangCoord(ByRef pt() As point2d, Angle As Single)
Dim i As Long, x As Single, y As Single
For i = 0 To UBound(pt)
x = pt(i).x * Cos(Angle) - pt(i).y * Sin(Angle)
y = pt(i).y * Cos(Angle) + pt(i).x * Sin(Angle)
pt(i).x = x
pt(i).y = y
Next i
End SubPrivate Sub DrawTriangle(ByRef pt() As point2d)
If UBound(pt) <> 2 Then Exit Sub
Picture1.Line (pt(0).x, pt(0).y)-(pt(1).x, pt(1).y), vbBlue
Picture1.Line -(pt(2).x, pt(2).y), vbBlue
Picture1.Line -(pt(0).x, pt(0).y), vbBlueEnd Sub
Private Sub Timer1_Timer()
ChangCoord pt, pi / 50
Picture1.Cls
DrawTriangle ptEnd Sub
放三个控件,pictruebox ,timer,command