formule voor reverse wherigo geocache berekening
Hallo,
Weet er iemand de formule om de coordinaten te berekenen van een reverse wherigo als de 3 getallen deze zijn
304141
418698
131437
De coordinaten zijn de volgende, maar hoe bereken je dat ???
49.143317
17.644383
Blijkbaar weet AI daar ook geen raad mee .???
Hier zitten waarschijnlijk nog slimmere dan AI
Dank bij voorbaat
Weet er iemand de formule om de coordinaten te berekenen van een reverse wherigo als de 3 getallen deze zijn
304141
418698
131437
De coordinaten zijn de volgende, maar hoe bereken je dat ???
49.143317
17.644383
Blijkbaar weet AI daar ook geen raad mee .???
Hier zitten waarschijnlijk nog slimmere dan AI
Dank bij voorbaat
Geen idee? Kan je hier niks wat vinden?
Google: formula+wherigo
Google: formula+wherigo
Gewijzigd op 03/01/2025 15:54:07 door - Ariën -
neen, heb op google ook gezocht
Heb je dit ook al gevonden? https://forums.geocaching.com/GC/index.php?/topic/361350-mathlogic-behind-reverse-wherigologic/
Er wordt onder meer gerefereerd aan de Haversine-formule. En je kan kijken of je de werking kan achterhalen op andere sites, mits het cliënt-side wordt gedaan.
Er wordt onder meer gerefereerd aan de Haversine-formule. En je kan kijken of je de werking kan achterhalen op andere sites, mits het cliënt-side wordt gedaan.
blijkbaar is dit ook niet de oplossing die haversine formule
de code hieronder met deze formule is totaal verkeerd.
de code hieronder met deze formule is totaal verkeerd.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
// Functie om de nieuwe coördinaten te berekenen
function calculateCoordinates($key1, $key2, $key3) {
// Referentiepunt (bijvoorbeeld 0°N, 0°E of een ander punt)
$lat1 = deg2rad(0); // 0° latitude in radialen
$lon1 = deg2rad(0); // 0° longitude in radialen
// Omrekeningen van de keys naar bruikbare waarden
$bearing = $key1 % 360; // Key1 is de richting (in graden)
$distance = $key2 / 1000; // Key2 is de afstand (omrekeningen naar kilometers)
$offset = $key3 / 1000000; // Key3 is een offset (kleine correctie)
// Omrekeningen van graden naar radialen
$bearingRad = deg2rad($bearing);
// Straal van de aarde in kilometers
$earthRadius = 6371;
// Bereken de nieuwe latitude (?2)
$lat2 = asin(sin($lat1) * cos($distance / $earthRadius) +
cos($lat1) * sin($distance / $earthRadius) * cos($bearingRad));
// Bereken de nieuwe longitude (?2)
$lon2 = $lon1 + atan2(sin($bearingRad) * sin($distance / $earthRadius) * cos($lat1),
cos($distance / $earthRadius) - sin($lat1) * sin($lat2));
// Converteer de resultaten terug naar graden
$newLatitude = rad2deg($lat2) + $offset; // Voeg eventueel een kleine offset toe
$newLongitude = rad2deg($lon2) + $offset;
return array('latitude' => $newLatitude, 'longitude' => $newLongitude);
}
// Voorbeeld van invoerwaarden (deze moeten dynamisch worden ingevoerd)
$key1 = 304141; // Richting (bearing)
$key2 = 418698; // Afstand (in meters)
$key3 = 131437; // Offset
// Bereken de coördinaten
$result = calculateCoordinates($key1, $key2, $key3);
// Toon de berekende coördinaten
echo "Berekende coördinaten:\n";
echo "Latitude: " . $result['latitude'] . "\n";
echo "Longitude: " . $result['longitude'] . "\n";
?>
// Functie om de nieuwe coördinaten te berekenen
function calculateCoordinates($key1, $key2, $key3) {
// Referentiepunt (bijvoorbeeld 0°N, 0°E of een ander punt)
$lat1 = deg2rad(0); // 0° latitude in radialen
$lon1 = deg2rad(0); // 0° longitude in radialen
// Omrekeningen van de keys naar bruikbare waarden
$bearing = $key1 % 360; // Key1 is de richting (in graden)
$distance = $key2 / 1000; // Key2 is de afstand (omrekeningen naar kilometers)
$offset = $key3 / 1000000; // Key3 is een offset (kleine correctie)
// Omrekeningen van graden naar radialen
$bearingRad = deg2rad($bearing);
// Straal van de aarde in kilometers
$earthRadius = 6371;
// Bereken de nieuwe latitude (?2)
$lat2 = asin(sin($lat1) * cos($distance / $earthRadius) +
cos($lat1) * sin($distance / $earthRadius) * cos($bearingRad));
// Bereken de nieuwe longitude (?2)
$lon2 = $lon1 + atan2(sin($bearingRad) * sin($distance / $earthRadius) * cos($lat1),
cos($distance / $earthRadius) - sin($lat1) * sin($lat2));
// Converteer de resultaten terug naar graden
$newLatitude = rad2deg($lat2) + $offset; // Voeg eventueel een kleine offset toe
$newLongitude = rad2deg($lon2) + $offset;
return array('latitude' => $newLatitude, 'longitude' => $newLongitude);
}
// Voorbeeld van invoerwaarden (deze moeten dynamisch worden ingevoerd)
$key1 = 304141; // Richting (bearing)
$key2 = 418698; // Afstand (in meters)
$key3 = 131437; // Offset
// Bereken de coördinaten
$result = calculateCoordinates($key1, $key2, $key3);
// Toon de berekende coördinaten
echo "Berekende coördinaten:\n";
echo "Latitude: " . $result['latitude'] . "\n";
echo "Longitude: " . $result['longitude'] . "\n";
?>
Op deze site kan je, zo te zien, de berekening achterhalen:
https://www.cachesleuth.com/reversewherigo.html
Het zijn gewoon Javascript bestanden.
https://www.cachesleuth.com/reversewherigo.html
Het zijn gewoon Javascript bestanden.
Ariën,
Hartelijk dank ik heb het inderdaad gevonden , het zijn java scripts, mijn php is ondertussen al aangepast en werkt perfect.
Mvg
Hartelijk dank ik heb het inderdaad gevonden , het zijn java scripts, mijn php is ondertussen al aangepast en werkt perfect.
Mvg
Fijn dat je het gevonden hebt! Het is overigens Javascript, en geen Java Script.
Dat is totaal wat anders. ;-)
Dat is totaal wat anders. ;-)




