⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.frm

📁 本程序所反应的是在测量中被广泛应用的全球定位系统(Global Position System)在空间中的形象以及基本的工作原理。GPS由三部分组成:空间部分、地面控制系统以及用户部分。
💻 FRM
📖 第 1 页 / 共 2 页
字号:
End Sub

Private Sub Form_Load()
 Picture1.Scale (-4000, 4000)-(4000, -4000)
 sita1 = 30 * pi / 180
 fai1 = 70 * pi / 180
 rou1 = 55000
 d1 = 7000
 zzj = 50
 Randomize
 For i = 1 To 24
    qishi1(i) = Rnd * 60
 Next i
 drawearth sita1, fai1, rou1, d1, zzj
 Command3.Enabled = False
 stltqishi = 0 '将卫星的起始角定义为0
End Sub

Private Sub Picture1_Click()
 Dim min
 If (maxx - minx) < (maxy - miny) Then d = maxx - minx
 If (maxx - minx) > (maxy - miny) Then d = maxy - miny
 If (picx ^ 2 + picy ^ 2) < (d / 2) ^ 2 Then
   pic1control = 1
   Timer1.Interval = 0
   dx1 = 0
   dx2 = 0
   dx3 = 0
   dx4 = 0
   Command2.Enabled = True
   Command3.Enabled = False
   Command5.Enabled = True
   Command6.Enabled = True
 End If
 If (picx ^ 2 + picy ^ 2) < (d / 2) ^ 2 Then
   Picture1.Cls
   
  

   '计算地面点的三维坐标
   Dim a1 As Double, a2 As Double, b1 As Double, b2 As Double, aa1 As Double, aa2 As Double, bb1 As Double, bb2 As Double, cc1 As Double, cc2 As Double, dd1 As Double, dd2 As Double, r As Double
   a1 = Sin(sita1)
   a2 = Cos(sita1)
   b1 = Sin(fai1)
   b2 = Cos(fai1)
   aa1 = -a2 * b1 * picy + a2 * b2 * d1
   bb1 = -a1 * b1 * picy + a1 * b2 * d1
   cc1 = -b2 * picy - b1 * d1
   dd1 = rou1 * picy
   aa2 = -a2 * b1 * picx + a1 * d1
   bb2 = -(a1 * b1 * picx + a2 * d1)
   cc2 = -(b2 * picx)
   dd2 = rou1 * picx
   r = radiu
   bian111 = -2 * bb2 ^ 3 * cc2 * bb1 * cc1 * r ^ 2 * aa1 ^ 2 + 4 * bb2 ^ 2 * cc2 * bb1 ^ 2 * cc1 * r ^ 2 * aa2 * aa1 - 4 * aa1 ^ 2 * bb2 * bb1 * aa2 ^ 2 * dd2 * dd1 + 2 * aa1 ^ 3 * bb2 * bb1 * aa2 * dd2 ^ 2 + 2 * aa1 * bb2 ^ 3 * bb1 * aa2 * dd1 ^ 2 + 2 * aa1 * bb2 * bb1 ^ 3 * aa2 * dd2 ^ 2 + 2 * aa1 * bb2 * bb1 * aa2 ^ 3 * dd1 ^ 2 - 4 * aa1 * bb2 ^ 2 * bb1 ^ 2 * aa2 * dd2 * dd1
   bian11 = -4 * aa1 ^ 3 * bb2 ^ 3 * r ^ 2 * aa2 * bb1 + 2 * aa1 ^ 2 * bb2 ^ 3 * dd2 * bb1 * dd1 + cc2 ^ 2 * bb1 ^ 2 * r ^ 2 * aa1 ^ 2 * bb2 ^ 2 - 2 * cc2 ^ 2 * bb1 ^ 3 * r ^ 2 * aa2 * aa1 * bb2 + aa2 ^ 2 * cc1 ^ 2 * r ^ 2 * aa1 ^ 2 * bb2 ^ 2 - 2 * aa2 ^ 3 * cc1 ^ 2 * r ^ 2 * aa1 * bb2 * bb1 + 2 * bb1 ^ 2 * aa2 ^ 3 * aa1 * dd2 * dd1 - 4 * bb1 ^ 3 * aa2 ^ 3 * r ^ 2 * aa1 * bb2 + 2 * bb1 ^ 3 * aa2 ^ 2 * dd2 * bb2 * dd1 - 2 * aa2 ^ 3 * aa1 * cc2 * cc1 * r ^ 2 * bb1 ^ 2 - 2 * aa2 * aa1 ^ 3 * cc2 * cc1 * r ^ 2 * bb2 ^ 2 + 4 * aa2 ^ 2 * aa1 ^ 2 * cc2 * cc1 * r ^ 2 * bb2 * bb1 - 2 * bb2 * cc2 * bb1 ^ 3 * cc1 * r ^ 2 * aa2 ^ 2 + bian111
   bian121 = 2 * dd1 * cc1 * aa2 ^ 2 * bb1 ^ 2 * dd2 * cc2 + 2 * dd2 ^ 2 * bb2 * bb1 * cc1 ^ 2 * aa2 * aa1 - 4 * dd2 * bb2 * bb1 * cc1 * aa2 * aa1 * cc2 * dd1 + 2 * bb2 * cc2 ^ 2 * bb1 * dd1 ^ 2 * aa2 * aa1 - 2 * bb2 ^ 3 * cc1 ^ 2 * r ^ 2 * aa2 * aa1 * bb1 + 6 * aa1 ^ 2 * bb2 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + 2 * aa1 ^ 3 * bb2 ^ 2 * aa2 * dd2 * dd1
   bian12 = -bb2 ^ 2 * cc1 ^ 2 * aa1 ^ 2 * dd2 ^ 2 - aa1 ^ 2 * bb2 ^ 2 * dd2 ^ 2 * bb1 ^ 2 - aa1 ^ 2 * bb2 ^ 2 * aa2 ^ 2 * dd1 ^ 2 + cc2 ^ 2 * bb1 ^ 4 * r ^ 2 * aa2 ^ 2 - cc2 ^ 2 * bb1 ^ 2 * aa2 ^ 2 * dd1 ^ 2 + aa2 ^ 4 * cc1 ^ 2 * r ^ 2 * bb1 ^ 2 - aa2 ^ 2 * cc1 ^ 2 * dd2 ^ 2 * bb1 ^ 2 - bb1 ^ 2 * aa2 ^ 2 * aa1 ^ 2 * dd2 ^ 2 - bb1 ^ 2 * aa2 ^ 2 * bb2 ^ 2 * dd1 ^ 2 + aa1 ^ 2 * cc2 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 - 2 * aa1 ^ 3 * cc2 ^ 2 * r ^ 2 * aa2 * bb2 * bb1 + bb2 ^ 2 * cc1 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + 2 * dd1 * cc1 * bb2 ^ 2 * dd2 * cc2 * aa1 ^ 2 + bian121
   bian1 = -aa1 ^ 2 * bb2 ^ 4 * dd1 ^ 2 + aa1 ^ 4 * bb2 ^ 4 * r ^ 2 - aa1 ^ 4 * bb2 ^ 2 * dd2 ^ 2 + bb1 ^ 4 * aa2 ^ 4 * r ^ 2 - bb1 ^ 4 * aa2 ^ 2 * dd2 ^ 2 - bb1 ^ 2 * aa2 ^ 4 * dd1 ^ 2 + aa1 ^ 4 * cc2 ^ 2 * r ^ 2 * bb2 ^ 2 - aa1 ^ 2 * cc2 ^ 2 * bb2 ^ 2 * dd1 ^ 2 + bb2 ^ 4 * cc1 ^ 2 * r ^ 2 * aa1 ^ 2 + bian12 + bian11
   bian2 = (-2 * dd1 * cc1 * bb2 ^ 2 - 2 * dd1 * cc1 * aa2 ^ 2 - 2 * bb1 ^ 2 * dd2 * cc2 - 2 * dd2 * cc2 * aa1 ^ 2 + 2 * dd2 * bb2 * bb1 * cc1 + 2 * bb2 * cc2 * bb1 * dd1 + 2 * aa2 * aa1 * dd2 * cc1 + 2 * aa2 * aa1 * cc2 * dd1 + 2 * bian1 ^ (1 / 2))
   bian3 = (aa1 ^ 2 * cc2 ^ 2 + bb2 ^ 2 * cc1 ^ 2 + aa1 ^ 2 * bb2 ^ 2 + cc2 ^ 2 * bb1 ^ 2 + aa2 ^ 2 * cc1 ^ 2 + bb1 ^ 2 * aa2 ^ 2 - 2 * aa2 * aa1 * cc2 * cc1 - 2 * bb2 * cc2 * bb1 * cc1 - 2 * aa1 * bb2 * bb1 * aa2)
   bian411 = -4 * bb1 ^ 3 * aa2 ^ 3 * r ^ 2 * aa1 * bb2 + 2 * bb1 ^ 3 * aa2 ^ 2 * dd2 * bb2 * dd1 - 2 * aa2 ^ 3 * aa1 * cc2 * cc1 * r ^ 2 * bb1 ^ 2 - 2 * aa2 * aa1 ^ 3 * cc2 * cc1 * r ^ 2 * bb2 ^ 2 + 4 * aa2 ^ 2 * aa1 ^ 2 * cc2 * cc1 * r ^ 2 * bb2 * bb1 - 2 * bb2 * cc2 * bb1 ^ 3 * cc1 * r ^ 2 * aa2 ^ 2 - 2 * bb2 ^ 3 * cc2 * bb1 * cc1 * r ^ 2 * aa1 ^ 2 + 4 * bb2 ^ 2 * cc2 * bb1 ^ 2 * cc1 * r ^ 2 * aa2 * aa1 - 4 * aa1 ^ 2 * bb2 * bb1 * aa2 ^ 2 * dd2 * dd1 + 2 * aa1 ^ 3 * bb2 * bb1 * aa2 * dd2 ^ 2 + 2 * aa1 * bb2 ^ 3 * bb1 * aa2 * dd1 ^ 2 + 2 * aa1 * bb2 * bb1 ^ 3 * aa2 * dd2 ^ 2 + 2 * aa1 * bb2 * bb1 * aa2 ^ 3 * dd1 ^ 2 - 4 * aa1 * bb2 ^ 2 * bb1 ^ 2 * aa2 * dd2 * dd1
   bian41 = -2 * bb2 ^ 3 * cc1 ^ 2 * r ^ 2 * aa2 * aa1 * bb1 + 6 * aa1 ^ 2 * bb2 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + 2 * aa1 ^ 3 * bb2 ^ 2 * aa2 * dd2 * dd1 - 4 * aa1 ^ 3 * bb2 ^ 3 * r ^ 2 * aa2 * bb1 + 2 * aa1 ^ 2 * bb2 ^ 3 * dd2 * bb1 * dd1 + cc2 ^ 2 * bb1 ^ 2 * r ^ 2 * aa1 ^ 2 * bb2 ^ 2 - 2 * cc2 ^ 2 * bb1 ^ 3 * r ^ 2 * aa2 * aa1 * bb2 + aa2 ^ 2 * cc1 ^ 2 * r ^ 2 * aa1 ^ 2 * bb2 ^ 2 - 2 * aa2 ^ 3 * cc1 ^ 2 * r ^ 2 * aa1 * bb2 * bb1 + 2 * bb1 ^ 2 * aa2 ^ 3 * aa1 * dd2 * dd1 + bian411
   bian42 = -2 * aa1 ^ 3 * cc2 ^ 2 * r ^ 2 * aa2 * bb2 * bb1 + bb2 ^ 2 * cc1 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + 2 * dd1 * cc1 * bb2 ^ 2 * dd2 * cc2 * aa1 ^ 2 + 2 * dd1 * cc1 * aa2 ^ 2 * bb1 ^ 2 * dd2 * cc2 + 2 * dd2 ^ 2 * bb2 * bb1 * cc1 ^ 2 * aa2 * aa1 - 4 * dd2 * bb2 * bb1 * cc1 * aa2 * aa1 * cc2 * dd1 + 2 * bb2 * cc2 ^ 2 * bb1 * dd1 ^ 2 * aa2 * aa1
   bian4 = -aa1 ^ 2 * bb2 ^ 4 * dd1 ^ 2 + aa1 ^ 4 * bb2 ^ 4 * r ^ 2 - aa1 ^ 4 * bb2 ^ 2 * dd2 ^ 2 + bb1 ^ 4 * aa2 ^ 4 * r ^ 2 - bb1 ^ 4 * aa2 ^ 2 * dd2 ^ 2 - bb1 ^ 2 * aa2 ^ 4 * dd1 ^ 2 + aa1 ^ 4 * cc2 ^ 2 * r ^ 2 * bb2 ^ 2 - aa1 ^ 2 * cc2 ^ 2 * bb2 ^ 2 * dd1 ^ 2 + bb2 ^ 4 * cc1 ^ 2 * r ^ 2 * aa1 ^ 2 - bb2 ^ 2 * cc1 ^ 2 * aa1 ^ 2 * dd2 ^ 2 - aa1 ^ 2 * bb2 ^ 2 * dd2 ^ 2 * bb1 ^ 2 - aa1 ^ 2 * bb2 ^ 2 * aa2 ^ 2 * dd1 ^ 2 + cc2 ^ 2 * bb1 ^ 4 * r ^ 2 * aa2 ^ 2 - cc2 ^ 2 * bb1 ^ 2 * aa2 ^ 2 * dd1 ^ 2 + aa2 ^ 4 * cc1 ^ 2 * r ^ 2 * bb1 ^ 2 - aa2 ^ 2 * cc1 ^ 2 * dd2 ^ 2 * bb1 ^ 2 - bb1 ^ 2 * aa2 ^ 2 * aa1 ^ 2 * dd2 ^ 2 - bb1 ^ 2 * aa2 ^ 2 * bb2 ^ 2 * dd1 ^ 2 + aa1 ^ 2 * cc2 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + bian42 + bian41
   locationy = -(1 / 2 * aa1 * cc2 / (aa1 ^ 2 * cc2 ^ 2 + bb2 ^ 2 * cc1 ^ 2 + aa1 ^ 2 * bb2 ^ 2 + cc2 ^ 2 * bb1 ^ 2 + aa2 ^ 2 * cc1 ^ 2 + bb1 ^ 2 * aa2 ^ 2 - 2 * aa2 * aa1 * cc2 * cc1 - 2 * bb2 * cc2 * bb1 * cc1 - 2 * aa1 * bb2 * bb1 * aa2) * (-2 * dd1 * cc1 * bb2 ^ 2 - 2 * dd1 * cc1 * aa2 ^ 2 - 2 * bb1 ^ 2 * dd2 * cc2 - 2 * dd2 * cc2 * aa1 ^ 2 + 2 * dd2 * bb2 * bb1 * cc1 + 2 * bb2 * cc2 * bb1 * dd1 + 2 * aa2 * aa1 * dd2 * cc1 + 2 * aa2 * aa1 * cc2 * dd1 + 2 * bian4 ^ (1 / 2)) + aa1 * dd2 - 1 / 2 * cc1 / bian3 * bian2 * aa2 - dd1 * aa2) / (aa1 * bb2 - bb1 * aa2)


   bian1 = aa1 ^ 2 * cc2 ^ 2 + bb2 ^ 2 * cc1 ^ 2 + aa1 ^ 2 * bb2 ^ 2 + cc2 ^ 2 * bb1 ^ 2 + aa2 ^ 2 * cc1 ^ 2 + bb1 ^ 2 * aa2 ^ 2 - 2 * aa2 * aa1 * cc2 * cc1 - 2 * bb2 * cc2 * bb1 * cc1 - 2 * aa1 * bb2 * bb1 * aa2
   bian21 = 2 * aa1 ^ 3 * bb2 * bb1 * aa2 * dd2 ^ 2 + 2 * aa1 * bb2 ^ 3 * bb1 * aa2 * dd1 ^ 2 + 2 * aa1 * bb2 * bb1 ^ 3 * aa2 * dd2 ^ 2 + 2 * aa1 * bb2 * bb1 * aa2 ^ 3 * dd1 ^ 2 - 4 * aa1 * bb2 ^ 2 * bb1 ^ 2 * aa2 * dd2 * dd1
   bian22 = -2 * bb2 * cc2 * bb1 ^ 3 * cc1 * r ^ 2 * aa2 ^ 2 - 2 * bb2 ^ 3 * cc2 * bb1 * cc1 * r ^ 2 * aa1 ^ 2 + 4 * bb2 ^ 2 * cc2 * bb1 ^ 2 * cc1 * r ^ 2 * aa2 * aa1 - 4 * aa1 ^ 2 * bb2 * bb1 * aa2 ^ 2 * dd2 * dd1
   bian23 = -4 * bb1 ^ 3 * aa2 ^ 3 * r ^ 2 * aa1 * bb2 + 2 * bb1 ^ 3 * aa2 ^ 2 * dd2 * bb2 * dd1 - 2 * aa2 ^ 3 * aa1 * cc2 * cc1 * r ^ 2 * bb1 ^ 2 - 2 * aa2 * aa1 ^ 3 * cc2 * cc1 * r ^ 2 * bb2 ^ 2 + 4 * aa2 ^ 2 * aa1 ^ 2 * cc2 * cc1 * r ^ 2 * bb2 * bb1
   bian24 = cc2 ^ 2 * bb1 ^ 2 * r ^ 2 * aa1 ^ 2 * bb2 ^ 2 - 2 * cc2 ^ 2 * bb1 ^ 3 * r ^ 2 * aa2 * aa1 * bb2 + aa2 ^ 2 * cc1 ^ 2 * r ^ 2 * aa1 ^ 2 * bb2 ^ 2 - 2 * aa2 ^ 3 * cc1 ^ 2 * r ^ 2 * aa1 * bb2 * bb1 + 2 * bb1 ^ 2 * aa2 ^ 3 * aa1 * dd2 * dd1
   bian25 = -2 * bb2 ^ 3 * cc1 ^ 2 * r ^ 2 * aa2 * aa1 * bb1 + 6 * aa1 ^ 2 * bb2 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + 2 * aa1 ^ 3 * bb2 ^ 2 * aa2 * dd2 * dd1 - 4 * aa1 ^ 3 * bb2 ^ 3 * r ^ 2 * aa2 * bb1 + 2 * aa1 ^ 2 * bb2 ^ 3 * dd2 * bb1 * dd1
   bian26 = 2 * dd1 * cc1 * aa2 ^ 2 * bb1 ^ 2 * dd2 * cc2 + 2 * dd2 ^ 2 * bb2 * bb1 * cc1 ^ 2 * aa2 * aa1 - 4 * dd2 * bb2 * bb1 * cc1 * aa2 * aa1 * cc2 * dd1 + 2 * bb2 * cc2 ^ 2 * bb1 * dd1 ^ 2 * aa2 * aa1
   bian27 = -bb1 ^ 2 * aa2 ^ 2 * bb2 ^ 2 * dd1 ^ 2 + aa1 ^ 2 * cc2 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 - 2 * aa1 ^ 3 * cc2 ^ 2 * r ^ 2 * aa2 * bb2 * bb1 + bb2 ^ 2 * cc1 ^ 2 * r ^ 2 * aa2 ^ 2 * bb1 ^ 2 + 2 * dd1 * cc1 * bb2 ^ 2 * dd2 * cc2 * aa1 ^ 2
   bian28 = -aa1 ^ 2 * bb2 ^ 2 * aa2 ^ 2 * dd1 ^ 2 + cc2 ^ 2 * bb1 ^ 4 * r ^ 2 * aa2 ^ 2 - cc2 ^ 2 * bb1 ^ 2 * aa2 ^ 2 * dd1 ^ 2 + aa2 ^ 4 * cc1 ^ 2 * r ^ 2 * bb1 ^ 2 - aa2 ^ 2 * cc1 ^ 2 * dd2 ^ 2 * bb1 ^ 2 - bb1 ^ 2 * aa2 ^ 2 * aa1 ^ 2 * dd2 ^ 2
   bian2 = -aa1 ^ 2 * bb2 ^ 4 * dd1 ^ 2 + aa1 ^ 4 * bb2 ^ 4 * r ^ 2 - aa1 ^ 4 * bb2 ^ 2 * dd2 ^ 2 + bb1 ^ 4 * aa2 ^ 4 * r ^ 2 - bb1 ^ 4 * aa2 ^ 2 * dd2 ^ 2 - bb1 ^ 2 * aa2 ^ 4 * dd1 ^ 2 + aa1 ^ 4 * cc2 ^ 2 * r ^ 2 * bb2 ^ 2 - aa1 ^ 2 * cc2 ^ 2 * bb2 ^ 2 * dd1 ^ 2 + bb2 ^ 4 * cc1 ^ 2 * r ^ 2 * aa1 ^ 2 - bb2 ^ 2 * cc1 ^ 2 * aa1 ^ 2 * dd2 ^ 2 - aa1 ^ 2 * bb2 ^ 2 * dd2 ^ 2 * bb1 ^ 2 + bian28 + bian27 + bian26 + bian25 + bian24 + bian23 + bian22 + bian21
   locationz = 1 / 2 / (bian1) * (-2 * dd1 * cc1 * bb2 ^ 2 - 2 * dd1 * cc1 * aa2 ^ 2 - 2 * bb1 ^ 2 * dd2 * cc2 - 2 * dd2 * cc2 * aa1 ^ 2 + 2 * dd2 * bb2 * bb1 * cc1 + 2 * bb2 * cc2 * bb1 * dd1 + 2 * aa2 * aa1 * dd2 * cc1 + 2 * aa2 * aa1 * cc2 * dd1 + 2 * (bian2) ^ (1 / 2))

   locationx = Sqr(r * r - locationy ^ 2 - locationz ^ 2)
   
   

   
   
   
   
   
   
   
   
   
   Label2.Caption = locationx
   Label3.Caption = locationy
   Label4.Caption = locationz
   Label1.Caption = "在惯性坐标系中的三维坐标:"
   
   
   
   
   
   
   
   '由惯性坐标系转换到地固坐标系



   linxx = locationx
   linyy = locationy
   linzz = locationz
   locationx = linxx * Cos(zzj * pi / 180) - linyy * Sin(zzj * pi / 180)
   locationy = linxx * Sin(zzj * pi / 180) + linyy * Cos(zzj * pi / 180)
   locationz = linzz
   
   linxx = locationx
   linyy = locationy
   linzz = locationz
   locationx = linxx
   locationy = linyy * Cos(qingjiao * pi / 180) - linzz * Sin(qingjiao * pi / 180)
   locationz = linyy * Sin(qingjiao * pi / 180) + linzz * Cos(qingjiao * pi / 180)
   
   
   '在屏幕上打印
   Picture1.ForeColor = QBColor(15)
   Picture1.Print locationx
   Picture1.CurrentX = picx
   Picture1.Print locationy
   Picture1.CurrentX = picx
   Picture1.Print locationz
   
   Label6.Caption = locationx
   Label7.Caption = locationy
   Label8.Caption = locationz
   Label5.Caption = "在地心坐标系中的三维坐标:"
   
   For i = 1 To 6
      For j = 1 To 4
         If stltx1(i, j) > 0 Then
           juli(i, j) = Sqr((stltx2(i, j) - picx) ^ 2 + (stlty2(i, j) - picy) ^ 2)
         End If
      Next j
   Next i
   n = 1
   For u = 1 To 4                '取距离最近的4个卫星的下标放入stlti和stltj数组中
      min = 40000000
      For i = 1 To 6
         For j = 1 To 4
            If juli(i, j) < min And juli(i, j) <> 0 Then min = juli(i, j)
         Next j
      Next i
      For i = 1 To 6
         For j = 1 To 4
            If juli(i, j) = min Then
              stlti(n) = i
              stltj(n) = j
              juli(i, j) = 0
            End If
         Next j
      Next i
      n = n + 1
   Next u
   
   Picture1.DrawWidth = 1
   drawearth sita1, fai1, rou1, d1, zzj
   
   
   Picture1.DrawStyle = 0
   Picture1.DrawWidth = 2

   For i = 1 To n - 1
      Picture1.DrawWidth = 2
      Picture1.Line (stltx2(stlti(i), stltj(i)), stlty2(stlti(i), stltj(i)))-(picx, picy), vbYellow
   Next i
   Picture1.Line (picx, picy + 50)-(picx - 50, picy - 25), vbRed
   Picture1.Line -(picx + 50, picy - 25), vbRed
   Picture1.Line -(picx, picy + 50), vbRed
 End If
 Picture1.DrawWidth = 1
End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
   mx = X
   my = Y
 If (Shift = 1) And (Button = 1) Then
   pic1control = 0
   If (maxx - minx) < (maxy - miny) Then d = maxx - minx
   If (maxx - minx) > (maxy - miny) Then d = maxy - miny
 Else
   picx = X
   picy = Y
 End If
End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
 If (Shift = 1) And (Button = 1) And (Command2.Enabled = True) Then
   If X > mx And Y > my Then
     zzj = zzj + 3
     sita1 = sita1 + 3 * pi / 180
     Picture1.Cls
     drawearth sita1, fai1, rou1, d1, zzj
     mx = X
     my = Y
   ElseIf X < mx And Y > my Then
     zzj = zzj - 3
     sita1 = sita1 + 3 * pi / 180
     Picture1.Cls
     drawearth sita1, fai1, rou1, d1, zzj
     mx = X
     my = Y
   ElseIf X < mx And Y < my Then
     zzj = zzj - 3
     sita1 = sita1 - 3 * pi / 180
     Picture1.Cls
     drawearth sita1, fai1, rou1, d1, zzj
     mx = X
     my = Y
   ElseIf X > mx And Y < my Then
     zzj = zzj + 3
     sita1 = sita1 - 3 * pi / 180
     Picture1.Cls
     drawearth sita1, fai1, rou1, d1, zzj
     mx = X
     my = Y
   End If
 End If
End Sub


Private Sub Timer1_Timer()
 Picture1.Cls
 drawearth sita1, fai1, rou1, d1, zzj
 zzj = zzj + 0.21
 stltqishi = stltqishi + 0.421
 If Timer1.Interval = 0 And pic1control = 1 Then
   Call Picture1_Click
 End If
 
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -