PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → [WM18] Pour les forts en calcul….
[WM18] Pour les forts en calcul….
Débuté par Gérard, 28 jan. 2013 17:45 - Aucune réponse
Posté le 28 janvier 2013 - 17:45
Bonjour,

Avec 2 positions géographiques, j'ai les instructions (géoDistance, géoAzimut) qui me permettent de calculer (de façon simple et à mon niveau) la distance et l'azimut entre ces 2 positions.


Exemple:
GeoPosition1 est un geoPosition
GeoPosition2 est un geoPosition
Distance est un réel
Azimut est un réel

GeoPosition1..Latitude=50
GeoPosition1..Longitude=0
GeoPosition2..Latitude=50.6314262000
GeoPosition2..Longitude=0.9994206477
Distance=geoDistance(GeoPosition1,GeoPosition2)
Azimut =géoAzimut(GeoPosition1,GeoPosition2)
Trace(Distance, Azimut)

Donne environ Distance=100 000m (100km) et Azimut=45°

Mon problème est le calcul de l'inverse.
C'est-à-dire calculer les coordonnées d'une position par rapport à une position connue, un azimut et une distance.
Ce que je cherche à faire c'est une fonction du type :

GeoPosition1 est un geoPosition
GeoPosition2 est un geoPosition
Distance est un réel
Azimut est un réel

GeoPosition1..Latitude=50
GeoPosition1..Longitude=0

Azimut=45
Distance=10000// en mètres

GeoPosition2=CalculeGeoPosition(GeoPosition1, Azimut, Distance)

Avec en retour de la fonction les coordonnées de la position cherchée.

La difficulté pour moi c'est que la terre est une sphère.
J'ai bien trouvé des choses sur internet, mais qui ne fonctionnent pas et de plus mes connaissances en trigonométrie sont au taquet pour ce problème.

Si vous avez des idées, je suis preneur.

Merci.