Kurz a rychlost pri bocnim vetru se da spocitat takhle (pokud zname planovany tratovy uhel a rychlost a taky smer a rychlost vetru) pouzivame to pri navrhu letove trasy. Clovek ale musi znat vyskovy vitr pro zadanou hladinu (da se zjistit v let. predpovedi na www.chmi.cz, ale kde se to najde v realu nevim.
(Je to kus kodu pro basic, ne uplne dodelany)
Public Type TNavTrojuhelnik
W As Double ' Tratova rychlost
tUZ As Double ' Tratovy uhel zemepisny
Kz As Double ' Kurz zemepisny
Vp As Double ' Rychlost prava vzdusna
U As Double ' Rychlost vetru
V As Double ' Smer vetru (odkud vane)
Delta As Double ' Smer vetru (kam vane)
US As Double ' Uhel snosu
UV As Double ' Uhel vetru
KUV As Double ' kursovy uhel vetru na kurs
End Type
Public Function NavTrojuhelnik(ByVal DruhVypoctu As Integer, ByRef tr As TNavTrojuhelnik) As Boolean
On Error GoTo NTerr
NavTrojuhelnik = False
If DruhVypoctu = 1 Then
' Je zadana W, TUz, U, V
' Zpocte se Vp, Kz, US
tr.UV = tr.tUZ - (tr.V - 180)
If tr.UV > 360 Then tr.UV = tr.UV - 360
If (tr.UV = 0) Then
' Vitr fouka proti
tr.Vp = tr.W - tr.U
tr.US = 0
tr.Kz = tr.tUZ
ElseIf (tr.tUZ = tr.V) Then
'Vitr fouka do zad
tr.Vp = tr.W + tr.U
tr.US = 0
tr.Kz = tr.tUZ
Else
tr.Vp = Sqr(tr.W ^ 2 + tr.U ^ 2 - 2 * tr.U * tr.W * Cos(Raad(tr.UV)))
' Uhel snosu
tr.US = Deeg(Arccos((tr.Vp ^ 2 + tr.W ^ 2 - tr.U ^ 2) / (2 * tr.Vp * tr.W)))
If tr.UV > 180 Or tr.UV |
|