Article View: pl.comp.bazy-danych.msaccess
Article #137615Re: Konwersja współrzędnych geograficznych - ciąg dalszy
From: Zbigniew Bratko
Date: Sat, 23 Jun 2018 15:13
Date: Sat, 23 Jun 2018 15:13
66 lines
2853 bytes
2853 bytes
W dniu 2018-06-23 o 10:20, Phantom pisze:
> Witam
>
> dotyczy: przeliczania wartości duble na stopnie
>
> W poprzedniej konwersacji na ten temat znalazłem genialny kod Krzysztofa Noworyty na powyższe.
> I tak dla wartości np.:
> 50,2684844521002 (współrzędna geograficzna w układzie WGS)
> funkcja zwraca:
> +50°16'07" - oczywiście wynik jest prawidłowy, ale:
> Wprowadzając tą samą wartość wgs (50,2684844521002) do GoogleMaps
> otrzymuję:
> 50°16'06.5" - czyli wynik jest dokładniejszy.
>
> Czy ktoś z grupowiczów ma pomysł na "podkręcenie" funkcji i zwiększenie dokładności obliczeń?
> Funkcja poniżej:
>
> Function DoubleNaStopnie(dbSt As Double) As String
[...]
>
> End Function
[...]
Przetestuj poniższą funkcję:
'_____________________________________________________________
Public Function zbDoubleNaStopnie(dblSt As Double) As String
Dim dblMin As Double
Dim dblSec As Double
Dim sRet As String
dblMin = (dblSt - Int(dblSt)) * 60
dblSec = dblMin - Int(dblMin)
' stopnie i minuty
sRet = sRet & CStr(Int(dblSt)) & Chr(176) & CStr(Int(dblMin)) & "'"
' sekundy
sRet = sRet & CStr(Int(dblSec * 60))
' reszta po przecinku zaokrąglona do 2 miejsc
sRet = sRet & "." & Mid$(CStr(bs_Round(dblSec * 60 - _
Int(dblSec * 60), 2)), 3) & Chr(34)
zbDoubleNaStopnie = sRet
End Function
'____________________________________________________________
Public Function bs_Round(Number As Variant, _
NumDigitsAfterDecimal As Long) As Double
If Not IsNumeric(Number) Then Err.Raise 5
bs_Round = Sgn(Number) * Int(CDec(Abs(Number)) * _
(10 ^ NumDigitsAfterDecimal) + 0.5) / _
(10 ^ NumDigitsAfterDecimal)
End Function
--
Pozdrowienia
BraZby
www.faq.accdb.pl
www.accdb.pl
Technical Details
Message-ID:
<pglo3j$bst$1@node1.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailReferences:
<50bfe759-a437-4cc5-a1b7-2395f0e59ed0@googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Zbigniew Bratko <byle@co.pl> Newsgroups: pl.comp.bazy-danych.msaccess Subject: Re: Konwersja współrzędnych geograficznych - ciąg dalszy Date: Sat, 23 Jun 2018 17:13:46 +0200 Organization: ATMAN - ATM S.A. Lines: 66 Message-ID: <pglo3j$bst$1@node1.news.atman.pl> References: <50bfe759-a437-4cc5-a1b7-2395f0e59ed0@googlegroups.com> NNTP-Posting-Host: 37.248.153.95 Mime-Version: 1.0 X-Trace: node1.news.atman.pl 1529766836 12189 37.248.153.95 (23 Jun 2018 15:13:56 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Sat, 23 Jun 2018 15:13:56 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 In-Reply-To: <50bfe759-a437-4cc5-a1b7-2395f0e59ed0@googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit