Prikazi cijelu temu 27.07.2011 01:58
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Lokacija:Tuzla


Predmet:Re: Queries vece manje
Evo ti moj kod:
PreuzmiIzvorni kôd (Visual Basic):
  1. Function PI() As Double
  2. PI = 4 * Atn(1)
  3. End Function
  4.  
  5. Function RadDeg(x As Double) As Double
  6. '-------------------------------------------------------------------
  7. ' Pretvara radiane u stepene
  8. '-------------------------------------------------------------------
  9.  RadDeg = x / PI() * 180
  10. End Function
  11.  
  12. Function Azimut(X1 As Single, Y1 As Single, X2 As Single, Y2 As Single) As Single
  13. Dim Dx As Single
  14. Dim DY As Single
  15. Dim Ugao As Double
  16.  
  17. Dx = X1 - X2
  18. DY = Y1 - Y2
  19.  
  20. Ugao = Atn(Abs(DY) / Abs(Dx))
  21.  If Dx < 0 Then
  22.             If DY < 0 Then
  23.               Ugao = Abs(Ugao) + PI
  24.              Else
  25.              Ugao = PI - Abs(Ugao)
  26.              End If
  27.          Else
  28.              If DY < 0 Then
  29.               Ugao = (2 * PI) - Abs(Ugao)
  30.              End If
  31.         End If
  32. Ugao = RadDeg(Ugao)
  33. Azimut = Format(Ugao, "0.00")
  34. End Function

a evo i Query:
PreuzmiIzvorni kôd (SQL):
  1. SELECT x.[1] AS x_1, y.[1] AS y_1, y.[2] AS y_2, x.[2] AS x_2, Sqr((([x_2]-[x_1])^2)+(([y_2]-[y_1])^2)) AS metara, RacunK(x.[1],x.[2],y.[1],y.[2])+Sqr((Atn(([x_2]-[x_1])/([y_2]-[y_1]))*57.29577951)^2) AS stepeni, Azimut([x].[1],[y].[1],[x].[2],[y].[2]) AS AZ
  2. FROM x INNER JOIN y ON x.id_x = y.id_y;

Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.