Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

lon/lat-> x,y,z

0 views
Skip to first unread message

olivier...@ifremer.fr

unread,
Oct 18, 2000, 3:00:00 AM10/18/00
to
bonjour,
Je cherche a convertir des données geographique lon/lat en
coordonnée sur une shere de rayon r dans un espace x y z.

j'ai essayé:

x = r * sin(lat) * cos(lon)
y = r * sin(lon);
z = r * cos(lat) * cos(lon);

ca ne marche pas comme je voudrai:
par exemple si je founit des val de lat entre -80 et 90 et des val de
lon entre 0 et 360, j'e n'obtiens pas une sphere avec un 'trou' au pole
sud, mais une sphere coupée en 2.

Quelqu'un a la bonne formule ?

merci

--
Olivier

--
Pour contacter le modérateur : fsg-...@neuronnexion.fr

Olivier Seller

unread,
Oct 19, 2000, 3:00:00 AM10/19/00
to
olivier...@ifremer.fr wrote:

Bonjour,
en notant z l'axe des poles, (0,0,0) le centre de la sphere :

x = cos (lat) * cos (long)
y = cos (lat) * sin (long)
z = sin (lat)

(ca doit etre la meme chose à une permutation près des coordonnées et des
variables, mais le résultat sera différent car les bornes seront
différentes)
O.S.

Olivier Seller

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
olivier...@ifremer.fr wrote:

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>
> j'ai essayé:
>
> x = r * sin(lat) * cos(lon)
> y = r * sin(lon);
> z = r * cos(lat) * cos(lon);
>
> ca ne marche pas comme je voudrai:
> par exemple si je founit des val de lat entre -80 et 90 et des val de
> lon entre 0 et 360, j'e n'obtiens pas une sphere avec un 'trou' au pole
> sud, mais une sphere coupée en 2.
>
> Quelqu'un a la bonne formule ?
>
> merci
>
> --
> Olivier
>
> --
> Pour contacter le modérateur : fsg-...@neuronnexion.fr

bonjour
j'essaie:
avec z l'axe des poles:

x = r * sin (lat) * cos (lon)
y = r * sin (lat) * sin (lon)
z = r * cos (lat)

Horst Kraemer

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
On 18 Oct 2000 14:07:11 GMT, olivier...@ifremer.fr wrote:

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>
> j'ai essayé:
>
> x = r * sin(lat) * cos(lon)
> y = r * sin(lon);
> z = r * cos(lat) * cos(lon);
>
> ca ne marche pas comme je voudrai:


x = r*cos(lat)*cos(lon)
y = r*cos(lat)*sin(lon)
z = r*sin(lat)

-180 < lon <=180
-90 <= lat <= 90

Alors le plan OxOy est le plan de l'équateur (lat=0)
(0,0,r) est le pôle nord, (0,0,-r) est le pôle sud.

--
Horst

Janek Milewski

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
Je te conseille de poser la question sur un forum de maths tu auras
certainement une réponse rapide.

--
Janek Milewski
mile...@libertysurf.fr

<olivier...@ifremer.fr> a écrit dans le message news:
39E76403...@ifremer.fr...


| bonjour,
| Je cherche a convertir des données geographique lon/lat en
| coordonnée sur une shere de rayon r dans un espace x y z.
|
| j'ai essayé:
|
| x = r * sin(lat) * cos(lon)
| y = r * sin(lon);
| z = r * cos(lat) * cos(lon);

--

Horst Kraemer

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
On 18 Oct 2000 14:07:11 GMT, olivier...@ifremer.fr wrote:

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>
> j'ai essayé:
>
> x = r * sin(lat) * cos(lon)
> y = r * sin(lon);
> z = r * cos(lat) * cos(lon);
>

> ca ne marche pas comme je voudrai:


x = r*cos(lat)*cos(lon)
y = r*cos(lat)*sin(lon)
z = r*sin(lat)

-180 < lon <=180
-90 <= lat <= 90

Alors le plan OxOy est le plan de l'équateur (lat=0)
(0,0,r) est le pôle nord, (0,0,-r) est le pôle sud.

--
Horst

--

David Aubert

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
On 18 Oct 2000 olivier...@ifremer.fr wrote:

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>

avec

x= r*sin(colat)*cos(lon)
y= r*sin(colat)*sin(lon)
z=cos(colat)

où colat est la colatitude (colat=90-lat en degrés) ça devrait marcher

David

Dominique Bernardi

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
In article (Dans l'article) <39E76403...@ifremer.fr>,
olivier...@ifremer.fr wrote (écrivait) :

>bonjour,
> Je cherche a convertir des données geographique lon/lat en
>coordonnée sur une shere de rayon r dans un espace x y z.
>

>j'ai essayé:
>
> x = r * sin(lat) * cos(lon)
> y = r * sin(lon);
> z = r * cos(lat) * cos(lon);

essaie plutôt

x = r * cos(lat) * cos(lon)
y = r * cos(lat) * sin(lon)
z = r * sin(lat)

--
Dominique Bernardi, Théorie des Nombres
Institut de Mathématiques - Université Pierre et Marie Curie
175 rue du Chevaleret F75013 Paris - bureau 7A34
Tél (33/0) 144275441 bern...@math.jussieu.fr

Horst Kraemer

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
On 18 Oct 2000 14:07:11 GMT, olivier...@ifremer.fr wrote:

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>
> j'ai essayé:
>
> x = r * sin(lat) * cos(lon)
> y = r * sin(lon);
> z = r * cos(lat) * cos(lon);
>

> ca ne marche pas comme je voudrai:


x = r*cos(lat)*cos(lon)
y = r*cos(lat)*sin(lon)
z = r*sin(lat)

-180 < lon <=180
-90 <= lat <= 90

Alors le plan OxOy est le plan de l'équateur (lat=0)
(0,0,r) est le pôle nord, (0,0,-r) est le pôle sud.

--
Horst

--

Jean-Philippe

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
<olivier...@ifremer.fr> a écrit dans le message :
39E76403...@ifremer.fr...

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>
> j'ai essayé:
>
> x = r * sin(lat) * cos(lon)

Ok

> y = r * sin(lon);

y = r* sin(lat)* sin(lon)

> z = r * cos(lat) * cos(lon);

z = r* sin(lat)

Horst Kraemer

unread,
Oct 21, 2000, 3:00:00 AM10/21/00
to
On 18 Oct 2000 14:07:11 GMT, olivier...@ifremer.fr wrote:

> bonjour,
> Je cherche a convertir des données geographique lon/lat en
> coordonnée sur une shere de rayon r dans un espace x y z.
>
> j'ai essayé:
>
> x = r * sin(lat) * cos(lon)

> y = r * sin(lon);

> z = r * cos(lat) * cos(lon);
>

> ca ne marche pas comme je voudrai:


x = r*cos(lat)*cos(lon)
y = r*cos(lat)*sin(lon)
z = r*sin(lat)

-180 < lon <=180
-90 <= lat <= 90

Alors le plan OxOy est le plan de l'équateur (lat=0)
(0,0,r) est le pôle nord, (0,0,-r) est le pôle sud.

--
Horst

--

0 new messages