?? frm偏置.frm
字號:
VERSION 5.00
Begin VB.Form frm偏置設計
BackColor = &H00808000&
BorderStyle = 3 'Fixed Dialog
Caption = "設計步驟"
ClientHeight = 2160
ClientLeft = 5685
ClientTop = 5655
ClientWidth = 5235
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 2160
ScaleWidth = 5235
ShowInTaskbar = 0 'False
Begin VB.CommandButton cmdSixth
BackColor = &H0080C0FF&
Caption = "第六步"
Height = 375
Left = 4320
Style = 1 'Graphical
TabIndex = 7
Top = 1680
Width = 735
End
Begin VB.CommandButton Command1
BackColor = &H0080C0FF&
Caption = "第二步"
Height = 375
Left = 960
Style = 1 'Graphical
TabIndex = 6
Top = 1680
Width = 735
End
Begin VB.PictureBox Picture1
BackColor = &H00FFFFFF&
Height = 1455
Left = 120
ScaleHeight = 1395
ScaleWidth = 4875
TabIndex = 4
Top = 120
Width = 4935
Begin VB.TextBox Text1
Appearance = 0 'Flat
BorderStyle = 0 'None
BeginProperty Font
Name = "楷體_GB2312"
Size = 15.75
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H000000FF&
Height = 1215
Left = 0
MultiLine = -1 'True
TabIndex = 5
Top = 120
Width = 4935
End
End
Begin VB.CommandButton Command4
BackColor = &H0080C0FF&
Caption = "第五步"
Height = 375
Left = 3480
Style = 1 'Graphical
TabIndex = 3
Top = 1680
Width = 735
End
Begin VB.CommandButton Command
BackColor = &H0080C0FF&
Caption = "第一步"
Default = -1 'True
Height = 375
Left = 120
Style = 1 'Graphical
TabIndex = 2
Top = 1680
Width = 735
End
Begin VB.CommandButton Command2
BackColor = &H0080C0FF&
Caption = "第三步"
Height = 375
Left = 1800
Style = 1 'Graphical
TabIndex = 1
Top = 1680
Width = 735
End
Begin VB.CommandButton Command3
BackColor = &H0080C0FF&
Caption = "第四步"
Height = 375
Left = 2640
Style = 1 'Graphical
TabIndex = 0
Top = 1680
Width = 735
End
End
Attribute VB_Name = "frm偏置設計"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private Sub cmdSixth_Click()
Dim i As Integer
Text1.Text = "6.以理論輪廓線上各點為圓心,以滾子半徑為半徑作圓,所得包絡線為凸輪實際輪廓曲線。"
mainfrm.Picture1.DrawWidth = 1
For i = 0 To 360 Step 10
mainfrm.Picture1.Circle (PointXY(i, 1), PointXY(i, 2)), r1, &HFFFFC0
Next
mainfrm.Picture1.DrawWidth = 3
mainfrm.Picture1.PSet (FactPXY(0, 1), FactPXY(0, 2))
For i = 1 To 360 Step 1
mainfrm.Picture1.Line -(FactPXY(i, 1), FactPXY(i, 2)), &H80FF&
Next
End Sub
Private Sub Command_Click()
Text1.Text = "1.按比例畫位移線圖、基圓和偏距圓,并標明各運動角。"
First0_step
End Sub
Private Sub Command1_Click()
Text1.Text = "2.延長從動件,與偏距圓相切,以此為始點在偏距圓上作出各運動角。"
First_Step
End Sub
Private Sub Command2_Click()
Dim i As Integer
Text1.Text = "3.將推程運動角和回程運動角分成若干等份,畫等分線與偏距圓交點的切線,與基圓相交。"
If i等分DT0 <> 0 Then
For i = 1 To i等分DT0
Unload mainfrm.lin等分DT0(i)
Unload mainfrm.lin基圓DT0(i)
Unload mainfrm.lin凸輪DT0(i)
Next
End If
If i等分DT2 <> 0 Then
For i = 1 To i等分DT2
Unload mainfrm.lin等分DT2(i)
Unload mainfrm.lin基圓DT2(i)
Unload mainfrm.lin凸輪DT2(i)
Next
End If
frm等分.Show vbModal
If i等分DT0 * i等分DT2 = 0 Then Exit Sub
Second_Step
End Sub
Private Sub Command3_Click()
Text1.Text = "4.延長各切線,延長線段長度與位移線圖對應等分線段長度相等。"
Third_Step
End Sub
Private Sub Command4_Click()
If r1 = 0 Then
Text1.Text = "5.順次光滑連接各點,得凸輪輪廓。"
mainfrm.Picture1.DrawWidth = 3
Else
Text1.Text = "5.順次光滑連接各點,得凸輪理論輪廓曲線。"
mainfrm.Picture1.DrawWidth = 1
End If
Forth_step
End Sub
Public Sub First0_step()
Dim i As Integer
mainfrm.Picture1.Cls
'畫回轉中心
mainfrm.Picture1.DrawWidth = 1
x0 = 230: y0 = 300
mainfrm.Picture1.Circle (x0, y0), 10, &HFFFF&
'畫坐標軸
mainfrm.linX.Y1 = PointXY(0, 2): mainfrm.linX.Y2 = PointXY(0, 2)
mainfrm.linY.Y1 = PointXY(0, 2): mainfrm.linY.Y2 = PointXY(0, 2) + 200
'O(1) = linX.X1: O(2) = linX.Y1
mainfrm.Label0.Top = O(2) - 10
mainfrm.lab_t.Top = O(2) + 30
'畫基圓
mainfrm.Picture1.DrawWidth = 1
mainfrm.Picture1.Circle (x0, y0), r0, &HFF&
'位移線圖
mainfrm.Picture1.DrawWidth = 3
For i = 1 To 360
If i = 1 Then mainfrm.Picture1.PSet (O(1), O(2)), &HFF& '
mainfrm.Picture1.Line -(XY(i, 1), XY(i, 2)), &HFF&
Next
mainfrm.Line1.Visible = True: mainfrm.Line2.Visible = True
mainfrm.Label1.Visible = True
mainfrm.Lineh1.Visible = True
mainfrm.lab_h.Visible = True
mainfrm.Lineh2.Visible = True
mainfrm.Line3.Visible = True
mainfrm.Line4.Visible = True
mainfrm.Label3.Visible = True
mainfrm.Line5.Visible = True
mainfrm.Label4.Visible = True
'畫偏距圓
mainfrm.Picture1.DrawWidth = 1
mainfrm.Picture1.Circle (x0, y0), e, &HFF&
End Sub
Public Sub First_Step()
mainfrm.Picture1.DrawWidth = 2
mainfrm.Picture1.Line (PointXY(0, 1), PointXY(0, 2))-(偏距圓XY(0, 1), 偏距圓XY(0, 2)), &HFFFF00
mainfrm.Picture1.DrawWidth = 1
mainfrm.Picture1.Line (x0, y0)-(偏距圓XY(0, 1), 偏距圓XY(0, 2)), &HFFFF00
mainfrm.Picture1.Line (x0, y0)-(偏距圓XY(δ0, 1), 偏距圓XY(δ0, 2)), &HFFFF00
mainfrm.Picture1.Line (x0, y0)-(偏距圓XY(δ0 + δ1, 1), 偏距圓XY(δ0 + δ1, 2)), &HFFFF00
mainfrm.Picture1.Line (x0, y0)-(偏距圓XY(δ0 + δ1 + δ2, 1), 偏距圓XY(δ0 + δ1 + δ2, 2)), &HFFFF00
End Sub
Public Sub Second_Step()
Dim j As Integer
Dim i As Integer
For i = 1 To i等分DT0
Load mainfrm.lin等分DT0(i)
Load mainfrm.lin基圓DT0(i)
Load mainfrm.lin凸輪DT0(i)
Next
For i = 1 To i等分DT2
Load mainfrm.lin等分DT2(i)
Load mainfrm.lin基圓DT2(i)
Load mainfrm.lin凸輪DT2(i)
Next
j = δ0 / i等分DT0
For i = 1 To i等分DT0
mainfrm.lin等分DT0(i).X1 = XY(i * j, 1)
mainfrm.lin等分DT0(i).X2 = XY(i * j, 1)
mainfrm.lin等分DT0(i).Y1 = XY(i * j, 2)
mainfrm.lin等分DT0(i).Y2 = mainfrm.linX.Y1
mainfrm.lin等分DT0(i).Visible = True
mainfrm.Picture1.Line (x0, y0)-(偏距圓XY(i * j, 1), 偏距圓XY(i * j, 2)), &HFFFFFF
mainfrm.lin基圓DT0(i).X1 = 基圓XY(i * j, 1)
mainfrm.lin基圓DT0(i).X2 = 偏距圓XY(i * j, 1)
mainfrm.lin基圓DT0(i).Y1 = 基圓XY(i * j, 2)
mainfrm.lin基圓DT0(i).Y2 = 偏距圓XY(i * j, 2)
mainfrm.lin基圓DT0(i).Visible = True
mainfrm.lin凸輪DT0(i).X1 = PointXY(i * j, 1)
mainfrm.lin凸輪DT0(i).X2 = 基圓XY(i * j, 1)
mainfrm.lin凸輪DT0(i).Y1 = PointXY(i * j, 2)
mainfrm.lin凸輪DT0(i).Y2 = 基圓XY(i * j, 2)
'lin凸輪DT0(i).Visible = True
Next i
j = δ2 / i等分DT2
For i = 1 To i等分DT2
mainfrm.lin等分DT2(i).X1 = XY(δ0 + δ1 + (i - 1) * j, 1)
mainfrm.lin等分DT2(i).X2 = XY(δ0 + δ1 + (i - 1) * j, 1)
mainfrm.lin等分DT2(i).Y1 = XY(δ0 + δ1 + (i - 1) * j, 2)
mainfrm.lin等分DT2(i).Y2 = mainfrm.linX.Y1
mainfrm.lin等分DT2(i).Visible = True
mainfrm.Picture1.Line (x0, y0)-(偏距圓XY(δ0 + δ1 + (i - 1) * j, 1), _
偏距圓XY(δ0 + δ1 + (i - 1) * j, 2)), &HFFFFFF
mainfrm.lin基圓DT2(i).X1 = 基圓XY(δ0 + δ1 + (i - 1) * j, 1)
mainfrm.lin基圓DT2(i).X2 = 偏距圓XY(δ0 + δ1 + (i - 1) * j, 1)
mainfrm.lin基圓DT2(i).Y1 = 基圓XY(δ0 + δ1 + (i - 1) * j, 2)
mainfrm.lin基圓DT2(i).Y2 = 偏距圓XY(δ0 + δ1 + (i - 1) * j, 2)
mainfrm.lin基圓DT2(i).Visible = True
mainfrm.lin凸輪DT2(i).X1 = PointXY(δ0 + δ1 + (i - 1) * j, 1)
mainfrm.lin凸輪DT2(i).X2 = 基圓XY(δ0 + δ1 + (i - 1) * j, 1)
mainfrm.lin凸輪DT2(i).Y1 = PointXY(δ0 + δ1 + (i - 1) * j, 2)
mainfrm.lin凸輪DT2(i).Y2 = 基圓XY(δ0 + δ1 + (i - 1) * j, 2)
'lin凸輪DT2(i).Visible = True
Next i
mainfrm.Picture1.Line (偏距圓XY(δ0 + δ1 + δ2, 1), 偏距圓XY(δ0 + δ1 + δ2, 2)) _
-(基圓XY(δ0 + δ1 + δ2, 1), 基圓XY(δ0 + δ1 + δ2, 2)), &HFFFFFF
End Sub
Public Sub Third_Step()
mainfrm.Timer2.Enabled = True
End Sub
Public Sub Forth_step()
mainfrm.Timer2.Enabled = False
Me.Enabled = False
mainfrm.cmd設置.Enabled = False
mainfrm.cmdReset.Enabled = False
mainfrm.cmd繼續.Enabled = False
mainfrm.cmd設計.Enabled = False
mainfrm.Timer3.Enabled = True
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -