📄 form2.frm
字号:
VERSION 5.00
Begin VB.Form Form2
BackColor = &H00C0FFFF&
Caption = "计算结果"
ClientHeight = 9360
ClientLeft = 2940
ClientTop = 1605
ClientWidth = 13905
LinkTopic = "Form2"
ScaleHeight = 9360
ScaleWidth = 13905
Begin VB.Frame Frame2
BackColor = &H00C0FFFF&
Height = 4095
Left = 9120
TabIndex = 10
Top = 3480
Width = 5055
Begin VB.CommandButton Command1
Caption = "查询"
Height = 495
Left = 1920
TabIndex = 18
Top = 1680
Width = 1215
End
Begin VB.TextBox Text4
Height = 615
Left = 1680
TabIndex = 16
Top = 2760
Width = 1815
End
Begin VB.TextBox Text3
Height = 495
Left = 1680
TabIndex = 13
Top = 840
Width = 1815
End
Begin VB.Label Label11
BackColor = &H00C0FFFF&
Caption = "mm"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 3840
TabIndex = 17
Top = 3000
Width = 255
End
Begin VB.Label Label10
BackColor = &H00C0FFFF&
Caption = "挠度值:"
Height = 255
Left = 360
TabIndex = 15
Top = 2760
Width = 735
End
Begin VB.Label Label9
BackColor = &H00C0FFFF&
Caption = "m"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 3720
TabIndex = 14
Top = 1080
Width = 135
End
Begin VB.Label Label8
BackColor = &H00C0FFFF&
Caption = "输入查询点距左侧距离值:"
Height = 495
Left = 240
TabIndex = 12
Top = 840
Width = 1095
End
Begin VB.Label Label7
BackColor = &H00C0FFFF&
Caption = "查询指定点挠度值"
BeginProperty Font
Name = "楷体_GB2312"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 1320
TabIndex = 11
Top = 240
Width = 2055
End
End
Begin VB.Frame Frame1
BackColor = &H00C0FFFF&
Height = 1695
Left = 9120
TabIndex = 2
Top = 1680
Width = 5055
Begin VB.TextBox Text2
Height = 495
Left = 2760
TabIndex = 7
Top = 840
Width = 1575
End
Begin VB.TextBox Text1
Height = 495
Left = 240
TabIndex = 5
Top = 840
Width = 1575
End
Begin VB.Label Label6
BackColor = &H00C0FFFF&
Caption = "m"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 4560
TabIndex = 9
Top = 960
Width = 135
End
Begin VB.Label Label5
BackColor = &H00C0FFFF&
Caption = "mm"
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 2040
TabIndex = 8
Top = 960
Width = 255
End
Begin VB.Label Label3
BackColor = &H00C0FFFF&
Caption = "中心处距左侧距离"
Height = 255
Left = 2880
TabIndex = 4
Top = 240
Width = 1575
End
Begin VB.Label Label2
BackColor = &H00C0FFFF&
Caption = "大小"
Height = 255
Left = 600
TabIndex = 3
Top = 360
Width = 375
End
End
Begin VB.PictureBox Picture1
BackColor = &H00FFFFFF&
Height = 6615
Left = 240
ScaleHeight = 6555
ScaleWidth = 8595
TabIndex = 0
Top = 1080
Width = 8655
End
Begin VB.Label Label4
BackColor = &H00C0FFFF&
Caption = "计算结果"
BeginProperty Font
Name = "隶书"
Size = 24
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 495
Left = 5880
TabIndex = 6
Top = 240
Width = 2055
End
Begin VB.Label Label1
BackColor = &H00C0FFFF&
Caption = "中心处挠度"
BeginProperty Font
Name = "宋体"
Size = 15
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 10680
TabIndex = 1
Top = 960
Width = 1575
End
End
Attribute VB_Name = "Form2"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim Ig As Double '计算惯性矩
Dim vp(100) As Double '存储由集中力引起的挠度
Dim vpe As Double '存储最终集中力挠度数
Dim i_vp As Integer '累加集中力引起挠度用循环变量
Dim vq As Double '存储均布载挠度数
Dim vm(100) As Double '存储由集中力矩引起的挠度
Dim vme As Double '存储最终集中力矩挠度数
Dim i_vm As Integer '累加集中力矩引起挠度用循环变量
Dim x As Double '存储欲查询点的位置信息
Dim ve As Double '存储欲查询点的最终挠度值
Private Sub Command1_Click()
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
vpe = 0
vpm = 0
vq = 0
If ls.fs = True And rs.fs = True Then '左右都是自由支持时的计算过程
For i_vp = 1 To t_p
If x < lp(i_vp).xp Then
vp(i_vp) = lp(i_vp).p * (dimes.l - lp(i_vp).xp) * x * (dimes.l ^ 2 - x ^ 2 - (dimes.l - lp(i_vp).xp) ^ 2) / (6000 * E * Ig * dimes.l)
If lp(i_vp).ud = False Then
vp(i_vp) = -vp(i_vp)
End If
Else
vp(i_vp) = lp(i_vp).p * (dimes.l - lp(i_vp).xp) * (((x - lp(i_vp).xp) ^ 3) / (dimes.l - lp(i_vp).xp) + (dimes.l ^ 2 - (dimes.l - lp(i_vp).xp) ^ 2) * x - x ^ 3) / (6000 * E * Ig * dimes.l)
If lp(i_vp).ud = False Then
vp(i_vp) = -vp(i_vp)
End If
End If
Next
For i_vp = 1 To t_p
vpe = vpe + vp(i_vp)
Next
vq = lq.q * x * (dimes.l ^ 2 - 2 * dimes.l * x ^ 2 + x ^ 2) / (24000 * E * 384 * Ig)
If lq.ud = False Then
vq = -vq
End If
For i_vm = 1 To t_m
If x < lm(i_m).xm Then
vm(i_vm) = -lm(i_vm).m * x * (dimes.l ^ 2 - 3 * (dimes.l - lm(i_vm).xm) ^ 2 - x ^ 2) / (6000 * E * Ig * dimes.l)
If lm(i_vm).ud = False Then
vm(i_vm) = -vm(i_vm)
End If
Else
vm(i_vm) = -lm(i_vm).m * (-x ^ 3 + 3 * dimes.l * (x - lm(i_vm).xm) ^ 2 + (dimes.l ^ 2 - 3 * (dimes.l - lm(i_vm).xm) ^ 2) * x) / (6000 * E * Ig * dimes.l)
If lm(i_vm).ud = False Then
vm(i_vm) = -vm(i_vm)
End If
End If
Next
For i_vm = 1 To t_m
vme = vme + vm(i_vm)
Next
End If
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
If ls.gs = True And rs.gs = True Then '两端固定端的计算过程
For i_vp = 1 To t_p
If x < lp(i_vp).xp Then
vp(i_vp) = lp(i_vp).p * (dimes.l - lp(i_vp).xp) ^ 2 * x ^ 2 * (3 * lp(i_vp).xp * dimes.l - (3 * lp(i_vp).xp + (dimes.l - lp(i_vp).xp)) * x) / (6000 * E * Ig * dimes.l ^ 2)
If lp(i_vp).ud = False Then
vp(i_vp) = -vp(i_vp)
End If
Else
vp(i_vp) = lp(i_vp).p * (dimes.l - lp(i_vp).xp) ^ 2 * x ^ 2 * (3 * lp(i_vp).xp * dimes.l - (3 * lp(i_vp).xp + (dimes.l - lp(i_vp).xp)) * x) / (6000 * E * Ig * dimes.l ^ 2) + lp(i_vp).p * (x - lp(i_vp).xp) ^ 3 / (6000 * E * Ig)
If lp(i_vp).ud = False Then
vp(i_vp) = -vp(i_vp)
End If
End If
Next
For i_vp = 1 To t_p
vpe = vpe + vp(i_vp)
Next
vq = lq.q * dimes.l ^ 4 * x ^ 2 * (dimes.l ^ 2 - 2 * x * dimes.l + x ^ 2) / (24000 * E * Ig)
If lq.ud = False Then
vq = -vq
End If
For i_vm = 1 To t_m
If x < lm(i_vm).xm Then
vm(i_vm) = -lm(i_vm).m * (0.5 * (0.75 - 3 * (dimes.l - lm(i_vm).xm) ^ 2 / dimes.l ^ 2)) / (6000 * E * Ig) - lm(i_vm).m * ((dimes.l - lm(i_vm).xm) ^ 2 - lm(i_vm).xm ^ 2) / (16000 * E * Ig)
If lm(i_vm).ud = False Then
vm(i_vm) = -vm(i_vm)
End If
Else
vm(i_vm) = -lm(i_vm).m * (0.5 * (0.75 - 3 * (dimes.l - lm(i_vm).xm) ^ 2 / dimes.l ^ 2) + 3 * (0.5 - lm(i_vm).xm / dimes.l)) / (6000 * E * Ig) - lm(i_vm).m * ((dimes.l - lm(i_vm).xm) ^ 2 - lm(i_vm).xm ^ 2) / (16000 * E * Ig)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -