Merci encore Souviron pour ton aide (et d'avoir persévéré ! Sans toi je serais passee a cote de cette histoire lat/long => x,y...Et ca aurait ete un desastre !).
Merci encore Souviron pour ton aide (et d'avoir persévéré ! Sans toi je serais passee a cote de cette histoire lat/long => x,y...Et ca aurait ete un desastre !).
Je reviens on pourrait dire la queue entre les jambes redemander votre aide après avoir tester mon programme...
1) Les formules reprises dans wiki ne marchaient pas car certaines de mes coordonnées lat/long sont négatives, ce qui rend le calcul impossible.
2)En cherchant j'ai trouve une libraire toute faite dans le langage que j'utilise, mais quand j'ai voulu le tester je me sus rendu compte que les distances n'étaient pas du tout respectée ! (ce qui est d'ailleurs dit dans la page wiki de la projection de Mercator..). J'obtiens environ une distance de 7000km entre Edimbourg et Greenwich (contre environ 500km dans la réalité).
Conclusion, je suis re-paumée..
Qu'ais-je encore mal compris ?
Edit : c'est peut etre bon cette fois..
Voir le sujet http://www.developpez.net/forums/d78...-geo-mercator/
Private Function Dist2Pnts(ByVal X1 As Single, ByVal Y1 As Single, ByVal X2 As Single, ByVal Y2 As Single) As Single
Dist2Pnts = Sqr((X2 - X1) * (X2 - X1) + (Y2 - Y1) * (Y2 - Y1))
End Function
Private Function DistPntSegm(ByVal XPnt As Single, ByVal YPnt As Single, ByVal Xb As Single, ByVal Yb As Single, ByVal Xe As Single, ByVal Ye As Single) As Single
Dim Result As Single
Dim Longueur As Single
Dim ParamR As Single
Dim x As Single
Dim y As Single
Dim ParamS As Single
Longueur = Dist2Pnts(Xb, Yb, Xe, Ye)
ParamR = ((XPnt - Xb) * (Xe - Xb) + (YPnt - Yb) * (Ye - Yb)) / Sqr(Longueur)
If (ParamR > 0) And (ParamR < 1) Then
x = Xb + ParamR * (Xe - Xb) ' X point projection de Xpnt sur le segment
y = Yb + ParamR * (Ye - Yb) ' Y point projection de Ypnt sur le segment
ParamS = ((Yb - YPnt) * (Xe - Xb) - (Xb - XPnt) * (Ye - Yb)) / Sqr(Longueur)
DistPntSegm = Abs(ParamS) * Longueur
Else
DistPntSegm = 999999
End If
End Function
avant de poster dans un sujet qui n'est pas le sien, on regarde de quoi il s'agit..
Et là, tu es à côté, ça on l'a donné dès le début, mais ça ne marche pas, comme expliqué dans les N messages...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager