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

📄 center.frm

📁 一个计算三角形中心的实用程序
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Form1 
   AutoRedraw      =   -1  'True
   BorderStyle     =   1  'Fixed Single
   Caption         =   "求中心"
   ClientHeight    =   8625
   ClientLeft      =   1545
   ClientTop       =   1485
   ClientWidth     =   12015
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   8625
   ScaleWidth      =   12015
   Begin VB.TextBox Text4 
      Height          =   375
      Left            =   2160
      TabIndex        =   18
      Top             =   2040
      Width           =   1335
   End
   Begin VB.TextBox Text3 
      Height          =   375
      Left            =   720
      TabIndex        =   17
      Top             =   2040
      Width           =   1335
   End
   Begin VB.TextBox Text2 
      Height          =   375
      Index           =   2
      Left            =   2160
      TabIndex        =   8
      Top             =   1560
      Width           =   1335
   End
   Begin VB.TextBox Text2 
      Height          =   375
      Index           =   1
      Left            =   2160
      TabIndex        =   7
      Top             =   1080
      Width           =   1335
   End
   Begin VB.TextBox Text2 
      Height          =   375
      Index           =   0
      Left            =   2160
      TabIndex        =   6
      Top             =   600
      Width           =   1335
   End
   Begin VB.TextBox Text1 
      Height          =   375
      Index           =   2
      Left            =   720
      TabIndex        =   5
      Top             =   1560
      Width           =   1335
   End
   Begin VB.TextBox Text1 
      Height          =   375
      Index           =   1
      Left            =   720
      TabIndex        =   4
      Top             =   1080
      Width           =   1335
   End
   Begin VB.TextBox Text1 
      Height          =   375
      Index           =   0
      Left            =   720
      TabIndex        =   3
      Top             =   600
      Width           =   1335
   End
   Begin VB.Label Label5 
      Caption         =   "中心"
      BeginProperty Font 
         Name            =   "黑体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   120
      TabIndex        =   19
      Top             =   2040
      Width           =   495
   End
   Begin VB.Line Line8 
      X1              =   12000
      X2              =   11760
      Y1              =   4500
      Y2              =   4680
   End
   Begin VB.Line Line7 
      X1              =   11760
      X2              =   12000
      Y1              =   4320
      Y2              =   4500
   End
   Begin VB.Line Line6 
      X1              =   6000
      X2              =   5880
      Y1              =   0
      Y2              =   240
   End
   Begin VB.Line Line5 
      X1              =   6000
      X2              =   6120
      Y1              =   0
      Y2              =   240
   End
   Begin VB.Line Line4 
      BorderColor     =   &H000000FF&
      Index           =   2
      Visible         =   0   'False
      X1              =   720
      X2              =   720
      Y1              =   4920
      Y2              =   5640
   End
   Begin VB.Line Line4 
      BorderColor     =   &H000000FF&
      Index           =   1
      Visible         =   0   'False
      X1              =   480
      X2              =   480
      Y1              =   4920
      Y2              =   5640
   End
   Begin VB.Line Line4 
      BorderColor     =   &H000000FF&
      Index           =   0
      Visible         =   0   'False
      X1              =   240
      X2              =   240
      Y1              =   4920
      Y2              =   5640
   End
   Begin VB.Label Label2 
      Caption         =   "Y"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   3
      Left            =   5760
      TabIndex        =   13
      Top             =   0
      Width           =   135
   End
   Begin VB.Label Label2 
      Caption         =   "X"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   2
      Left            =   11640
      TabIndex        =   12
      Top             =   4080
      Width           =   135
   End
   Begin VB.Line Line3 
      X1              =   0
      X2              =   12000
      Y1              =   4500
      Y2              =   4500
   End
   Begin VB.Line Line2 
      X1              =   6000
      X2              =   6000
      Y1              =   0
      Y2              =   9000
   End
   Begin VB.Line Line1 
      BorderColor     =   &H00FF0000&
      Index           =   2
      Visible         =   0   'False
      X1              =   240
      X2              =   240
      Y1              =   3720
      Y2              =   4440
   End
   Begin VB.Line Line1 
      BorderColor     =   &H00FF0000&
      Index           =   1
      Visible         =   0   'False
      X1              =   720
      X2              =   720
      Y1              =   3720
      Y2              =   4440
   End
   Begin VB.Line Line1 
      BorderColor     =   &H00FF0000&
      Index           =   0
      Visible         =   0   'False
      X1              =   480
      X2              =   480
      Y1              =   3720
      Y2              =   4440
   End
   Begin VB.Label Label2 
      Caption         =   "Y"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   1
      Left            =   2760
      TabIndex        =   10
      Top             =   240
      Width           =   135
   End
   Begin VB.Label Label2 
      Caption         =   "X"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   0
      Left            =   1320
      TabIndex        =   9
      Top             =   240
      Width           =   135
   End
   Begin VB.Label Label1 
      Caption         =   "C点"
      BeginProperty Font 
         Name            =   "黑体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   2
      Left            =   240
      TabIndex        =   2
      Top             =   1560
      Width           =   375
   End
   Begin VB.Label Label1 
      Caption         =   "B点"
      BeginProperty Font 
         Name            =   "黑体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   1
      Left            =   240
      TabIndex        =   1
      Top             =   1080
      Width           =   375
   End
   Begin VB.Label Label1 
      Caption         =   "A点"
      BeginProperty Font 
         Name            =   "黑体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Index           =   0
      Left            =   240
      TabIndex        =   0
      Top             =   600
      Width           =   375
   End
   Begin VB.Label Label3 
      Caption         =   "o"
      BeginProperty Font 
         Name            =   "黑体"
         Size            =   14.25
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   6120
      TabIndex        =   11
      Top             =   4200
      Width           =   135
   End
   Begin VB.Label Label4 
      Alignment       =   2  'Center
      Caption         =   "C"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Index           =   2
      Left            =   7560
      TabIndex        =   16
      Top             =   5400
      Width           =   495
   End
   Begin VB.Label Label4 
      Alignment       =   2  'Center
      Caption         =   "B"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Index           =   1
      Left            =   5400
      TabIndex        =   15
      Top             =   2520
      Width           =   375
   End
   Begin VB.Label Label4 
      Alignment       =   2  'Center
      Caption         =   "A"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Index           =   0
      Left            =   4080
      TabIndex        =   14
      Top             =   5160
      Width           =   375
   End
   Begin VB.Label Label6 
      Alignment       =   2  'Center
      Caption         =   "M"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   12
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   4800
      TabIndex        =   20
      Top             =   3720
      Width           =   375
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim kg As Integer
Dim XX(1 To 3), YY(1 To 3) As Double


Private Sub Form_Click()
kg = 0
End Sub

Private Sub Form_Load()
MsgBox ("单击A,B,C后可拖动三顶点;输入点坐标后,单击M可算中心。")

Form1.Width = 12100
Form1.Height = 9000

Call origin

For i = 0 To 2
Line1(i).Visible = True
Line4(i).Visible = True
Next i

Call drawthr
End Sub



Private Sub drawthr()
For i = 0 To 2
j = ((i + 2) Mod 3) + 1
Line1(i).X1 = XX(i + 1)
Line1(i).X2 = XX(j)
Line1(i).Y1 = YY(i + 1)
Line1(i).Y2 = YY(j)
Next i

For i = 0 To 2
Label4(i).Left = XX(i + 1) + 50
Label4(i).Top = YY(i + 1) + 50
Next i

For i = 0 To 2
Text1(i).Text = XX(i + 1) - 6000
Text2(i).Text = 4500 - YY(i + 1)
Next i

fm = (XX(2) - XX(3)) * (YY(2) - YY(1)) - (YY(2) - YY(3)) * (XX(2) - XX(1))

If fm = 0 Then
MsgBox ("在无穷远处!")
GoTo 11
End If
fzx = (XX(2) ^ 2 + YY(2) ^ 2) * (YY(1) - YY(3)) - (XX(1) ^ 2 + YY(1) ^ 2) * (YY(2) - YY(3)) + (XX(3) ^ 2 + YY(3) ^ 2) * (YY(2) - YY(1))
fzy = (XX(2) ^ 2 + YY(2) ^ 2) * (XX(1) - XX(3)) - (XX(1) ^ 2 + YY(1) ^ 2) * (XX(2) - XX(3)) + (XX(3) ^ 2 + YY(3) ^ 2) * (XX(2) - XX(1))
xc = -fzx / fm / 2
yc = fzy / fm / 2

Label6.Left = xc + 100
Label6.Top = yc + 100

For i = 0 To 2
Line4(i).X1 = xc
Line4(i).Y1 = yc
Next i

On Error GoTo 11

For i = 0 To 1
Line4(i).X2 = (XX(i + 1) + XX(i + 2)) / 2
Line4(i).Y2 = (YY(i + 1) + YY(i + 2)) / 2
Next i

Line4(2).X2 = (XX(3) + XX(1)) / 2
Line4(2).Y2 = (YY(3) + YY(1)) / 2

Text3.Text = xc - 6000
Text4.Text = 4500 - yc

11: End Sub

Private Sub origin()
XX(1) = 4000
XX(2) = 5000
XX(3) = 8000
YY(1) = 7000
YY(2) = 3000
YY(3) = 6000
End Sub


Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If kg <> 0 Then
XX(kg) = X
YY(kg) = Y
Call drawthr
End If
End Sub

Private Sub Label4_Click(Index As Integer)
kg = Index + 1
End Sub

Private Sub Label6_Click()
For i = 0 To 2
XX(i + 1) = Val(Text1(i).Text) + 6000
YY(i + 1) = 4500 - Val(Text2(i).Text)
Next i
Call drawthr
End Sub

⌨️ 快捷键说明

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