Главная Обратная связь

Дисциплины:






Построение графиков скорости селевого потока



(Практическая работа №10)

Цели :

1. Закрепить теоретический материал

2. Приобрести практические навыки

Задания:

1.Разместить на форме графическое поле, в котором построить графики функций

2.Построить графики для скорости селевого потока в функции угла и высоты потока

3.Построить график для скорости селевого потока в функции угла наклона и высоты потока

График функции

5*Abs(Sin(X))

X^(1/2) + Log(X+1)

 

Рис.3.30 «График»

Код программы:

Private Sub Form_Load()

Line1.BorderColor = vbRed

Line2.BorderColor = vbGreen

End Sub

Private Sub Command1_Click()

Dim X As Single, Y As Single, I As Integer

Picture1.Scale (-0.6, 6)-(11, -1)

'Горизонтальная ось

Picture1.Line (0, 0)-(10.5, 0)

For I = 0 To 10

Picture1.Line (I, 0)-(I, 0.2)

Picture1.PSet (I - 0.3, -0.1), vbWhite

Picture1.Print I

Next I

'Вертикальная ось

Picture1.Line (0, 0)-(0, 5.5)

For I = 1 To 5

Picture1.Line (0, I)-(0.2, I)

Picture1.PSet (-0.6, I + 0.3), vbWhite

Picture1.Print I

Next I

'Графики

For X = 0 To 10 Step 0.01

Y = 5 * Abs(Sin(X))

Picture1.PSet (X, Y), vbRed

Y = X ^ (1 / 2) + Log(X + 1)

If Y >= 0 And Y <= 5 Then

Picture1.PSet (X, Y), vbGreen

End If

Next X

End Sub

скорость селевого потока

V=11.4(H)1/2(sinα)1/3 (м/с)

Здесь:

· α=0–25º – средний угол наклона селевого русла.

· H=0.5, 1, 3. 5 м – средняя глубина потока.

 

интерактивный график скорости селевого потока

V=11.4(H)1/2(sinα)1/3 (м/с)

Обеспечить интерактивное вычисление скорости селевого потока с помощью нажатия клавиши мыши.

 

Рис.3.31 «Интерфейс»

Код программы:

Dim Verify As Boolean

Private Sub Plot(H As Single, Color As Long)

Dim X As Single, Y As Single, I As Integer

For X = 0 To 25 Step 0.01

Y = 11.4 * (H) ^ (1 / 2) * (Sin(3.141593 * X / 180)) ^ (1 / 3)

If Y <= 14 Then

Picture1.PSet (X, Y), Color

End If

Next X

End Sub

Private Function V(H As Single, X As Single) As Single

V = 11.4 * (H) ^ (1 / 2) * (Sin(3.141593 * X / 180)) ^ (1 / 3)

End Function

Private Sub Command1_Click()

Picture1.Refresh

Picture1.Scale (-2.5, 15.5)-(27, -2)

'Горизонтальная ось

'Вертикальная ось

'Графики

Select Case Combo1.ListIndex

Case 0

Plot 1, vbGreen

Case 1

Plot 2, vbGreen

Case 2

Plot 3, vbGreen

Case 3

Plot 4, vbGreen

Case 4

Plot 5, vbGreen

Case 5

Plot 6, vbGreen

End Select

End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Verify = True Then

Text1.Text = Round(X, 1)

End If

End Sub



Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Verify = True Then

Text2.Text = Round(X, 1)

Select Case Combo1.ListIndex

Case 0

Text3.Text = Round(V(1, X), 1)

Case 1

Text3.Text = Round(V(2, X), 1)

Case 2

Text3.Text = Round(V(3, X), 1)

Case 3

Text3.Text = Round(V(4, X), 1)

Case 4

Text3.Text = Round(V(5, X), 1)

Case 5

Text3.Text = Round(V(6, X), 1)

End Select

End If

End Sub

Private Sub Command2_Click()

Verify = True

End Sub

Вопросы:

1. Как прописываются оси?

2. Что прописывается, когда нужно сделать вычисления путем клика мышью?

 





sdamzavas.net - 2019 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...