Thread View: alt.pl.matematyka
18 messages
18 total messages
Started by Maciej Rychter
Fri, 04 Dec 2009 08:40
Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: Maciej Rychter
Date: Fri, 04 Dec 2009 08:40
Date: Fri, 04 Dec 2009 08:40
37 lines
2297 bytes
2297 bytes
Witam, mam następujący problem. Chce zmierzyć odległość pomiędzy dwoma punktami leżącymi na elipsoidzie. Żeby to zrobić trzeba najpierw przeciąć elipsoidę płaszczyzną przechodzącą przez co najmniej 3 punkty leżące na elipsoidzie. Równanie płaszczyzny to A*x+B*y+C*z+D=0 Równanie parametryczne elipsoidy to: x= a*sin(phi)*cos(t) y=b*sin(phi)*sin(t) z=c*cos(phi) Jeżeli podstawimy x, y, z do równania otrzymamy równanie krzywej (dwuwymiarowej elipsy w przestrzeni 3d) to otrzymamy równanie: a*A*sin(phi)cos(t)+b*B*sin(phi)sin(t)+c*C*cos(phi)+D=0 Liczenie odległości pomiędzy dwoma punktami na elipsoidzie sprowadza się do policzenia długości wycinka krzywej opisanej powyższym wzorem. Długość dowolnej krzywizny odblicza się za pomocą całki oznaczonej krzywoliniowej http://pl.wikipedia.org/wiki/D%C5%82ugo%C5%9B%C4%87_%C5%82uku Pytanie: jak teraz zapisać taką całkę? -- Pozdrawiam, Maciek __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4659 (20091203) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzn± przechodz±c± przez 2 punkty leż±ce na elipsoidzie
Author: Maciej Woźniak
Date: Fri, 04 Dec 2009 20:18
Date: Fri, 04 Dec 2009 20:18
16 lines
1754 bytes
1754 bytes
Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomości news:hfage0$bhk$1@news.interia.pl... > Witam, > > mam następuj±cy problem. Chce zmierzyć odległo¶ć pomiędzy dwoma punktami > leż±cymi na elipsoidzie. > Żeby to zrobić trzeba najpierw przeci±ć elipsoidę płaszczyzn± przechodz±c± > przez co najmniej 3 punkty leż±ce na elipsoidzie. Może czegoś nie łapię, ale moim zdaniem trzeba najpierw określić, którą płaszczyzną powinieneś ciąć, i to wcale nie będzie proste. Właściwie, to wcale nie założyłbym się, że najkrótsza droga pomiędzy 2-ma dowolnymi punktami elipsoidy jest zawsze na jednej płaszczyźnie. Ale nigdy z elipsoidami nie miałem do czynienia.
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: GrzybSon
Date: Fri, 04 Dec 2009 22:14
Date: Fri, 04 Dec 2009 22:14
54 lines
3242 bytes
3242 bytes
> > Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomości > news:hfage0$bhk$1@news.interia.pl... >> Witam, >> >> mam następuj±cy problem. Chce zmierzyć odległo¶ć pomiędzy dwoma punktami >> leż±cymi na elipsoidzie. >> Żeby to zrobić trzeba najpierw przeci±ć elipsoidę płaszczyzn± >> przechodz±c± przez co najmniej 3 punkty leż±ce na elipsoidzie. > > Może czegoś nie łapię, ale moim zdaniem trzeba najpierw określić, > którą płaszczyzną powinieneś ciąć, i to wcale nie będzie proste. Określenie, którą płaszczyzną trzeba ciąć nie jest trudne - aby wyznaczyć równanie płaszczyzny potrzeba nam 3 punktów z czego 2 już mamy dane i leżą one na elipsoidzie. 3 punkt można wyznaczyć jako punkt leżący np w połowie odległości pomiędzy danymi dwoma. Np. niech te dwa punkty mają współrzędne (phi1, theta1) (phi2, theta2) to punkt leżący pomiędzy nimi będzie miał współrzędne [(phi1+phi2)/2; (theta1+theta2)/2] Mając 3 punkty wyznaczamy równanie płaszczyzny, którą tniemy elipsoidę. Problem w tym, że nie mogę dojść do równania parametrycznego krzywej, która powstanie z przecięcia elipsoidy z płaszczyzną. Postać ogólna takiej krzywej - elipsy 2d w przestrzeni 3d będzie następująca: a*A*sin(phi)cos(t)+b*B*sin(phi)sin(t)+c*C*cos(phi)+D=0 Aby teraz policzyć długość łuku wycinka krzywej czyli inaczej dystansu potrzeba przejścia z tego równania na postać parametryczną - przykładowo dla cykloidy będzie to: x = a*(t-sin(t)) y= a*(1-cos(t)) Czyli musi to być najlepiej funkcja jednej zmiennej. > > Właściwie, to wcale nie założyłbym się, że najkrótsza droga > pomiędzy 2-ma dowolnymi punktami elipsoidy jest zawsze na jednej > płaszczyźnie. Ale nigdy z elipsoidami nie miałem do czynienia. Przyjąłem, że dystans liczymy po łuku, a nie po prostej. __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4661 (20091204) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzn± przechodz±c± przez 2 punkty leż±ce na elipsoidzie
Author: Maciej Woźniak
Date: Sat, 05 Dec 2009 15:22
Date: Sat, 05 Dec 2009 15:22
32 lines
2548 bytes
2548 bytes
Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomości news:hfc1k5$hdn$1@news.onet.pl... > > >> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomości >> news:hfage0$bhk$1@news.interia.pl... >>> Witam, >>> >>> mam następuj±cy problem. Chce zmierzyć odległo¶ć pomiędzy dwoma punktami >>> leż±cymi na elipsoidzie. >>> Żeby to zrobić trzeba najpierw przeci±ć elipsoidę płaszczyzn± >>> przechodz±c± przez co najmniej 3 punkty leż±ce na elipsoidzie. >> >> Może czegoś nie łapię, ale moim zdaniem trzeba najpierw określić, >> którą płaszczyzną powinieneś ciąć, i to wcale nie będzie proste. > > Określenie, którą płaszczyzną trzeba ciąć nie jest trudne - aby wyznaczyć > równanie płaszczyzny potrzeba nam > 3 punktów z czego 2 już mamy dane i leżą one na elipsoidzie. 3 punkt można > wyznaczyć jako punkt leżący np > w połowie odległości pomiędzy danymi dwoma. Np. niech te dwa punkty mają > współrzędne (phi1, theta1) (phi2, theta2) > to punkt leżący pomiędzy nimi będzie miał współrzędne [(phi1+phi2)/2; > (theta1+theta2)/2] Nie dostaniesz w ten sposób najkrótszej drogi. Weź sobie elipsoidę typu "kula spłaszczona" o równiku w płaszczyźnie Z=0, i punkty, w których przecina oś X. Najkrótsza droga przez biegun, a Tobie wyjdzie po równiku. Powtórzę - na moje oko najkrótsza droga nie musi być w ogóle w jednej płaszczyźnie.
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: GrzybSon
Date: Sat, 05 Dec 2009 21:48
Date: Sat, 05 Dec 2009 21:48
72 lines
3789 bytes
3789 bytes
Użytkownik "Maciej Woźniak" <mlwozniak_nospam@wp.pl> napisał w wiadomości news:hfdts2$179$1@inews.gazeta.pl... > > Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomości > news:hfc1k5$hdn$1@news.onet.pl... >> > >>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomości >>> news:hfage0$bhk$1@news.interia.pl... >>>> Witam, >>>> >>>> mam następuj±cy problem. Chce zmierzyć odległo¶ć pomiędzy dwoma >>>> punktami leż±cymi na elipsoidzie. >>>> Żeby to zrobić trzeba najpierw przeci±ć elipsoidę płaszczyzn± >>>> przechodz±c± przez co najmniej 3 punkty leż±ce na elipsoidzie. >>> >>> Może czegoś nie łapię, ale moim zdaniem trzeba najpierw określić, >>> którą płaszczyzną powinieneś ciąć, i to wcale nie będzie proste. >> >> Określenie, którą płaszczyzną trzeba ciąć nie jest trudne - aby wyznaczyć >> równanie płaszczyzny potrzeba nam >> 3 punktów z czego 2 już mamy dane i leżą one na elipsoidzie. 3 punkt >> można >> wyznaczyć jako punkt leżący np >> w połowie odległości pomiędzy danymi dwoma. Np. niech te dwa punkty mają >> współrzędne (phi1, theta1) (phi2, theta2) >> to punkt leżący pomiędzy nimi będzie miał współrzędne [(phi1+phi2)/2; >> (theta1+theta2)/2] > > Nie dostaniesz w ten sposób najkrótszej drogi. > Weź sobie elipsoidę typu "kula spłaszczona" o równiku w > płaszczyźnie Z=0, i punkty, w których przecina oś X. > Najkrótsza droga przez biegun, a Tobie wyjdzie po równiku. Poczytałem o ortodromie i wynika z tego, że aby ją wyznaczyć należy przeciąć elipsoidę płaszczyzną przechodzącą przez podane punkty A i B oraz środek elipsoidy. Z takich danych już można spokojnie wyznaczyć wzór krzywej (elipsy) po ktorej poruszamy się między punktami A i B. Z takiego przecięcia się elipsoidy i płaszczyzny ogólne równanie elipsy: AX^2+BXY+CY^2 + DX+EY+F=0 Teraz nie wiem za bardzo jak przejść z takiego powyższego zapisu (uogólnionego) na równanie parametryczne elipsy np. x(t) = a*sin(t) y(t) = b*cos(t) > > Powtórzę - na moje oko najkrótsza droga nie musi być w > ogóle w jednej płaszczyźnie. > > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur > wirusow 4661 (20091204) __________ > > Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. > > http://www.eset.pl lub http://www.eset.com > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4661 (20091204) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzn± przechodz±c± przez 2 punkty leż±ce na elipsoidzie
Author: Maciej Woźniak
Date: Sun, 06 Dec 2009 15:55
Date: Sun, 06 Dec 2009 15:55
13 lines
1602 bytes
1602 bytes
Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomości news:hfekft$a28$1@news.onet.pl... > Poczytałem o ortodromie i wynika z tego, że aby ją wyznaczyć należy > przeciąć elipsoidę płaszczyzną > przechodzącą przez podane punkty A i B oraz środek elipsoidy. Czytałeś o ortodromie dla kuli czy dla elipsoidy? To nie zadziała. Znaczy - jakąś drogę, owszem, dostaniesz. Być może, wystarczająco krótką dla Twoich potrzeb.
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: Maciek
Date: Mon, 07 Dec 2009 08:33
Date: Mon, 07 Dec 2009 08:33
34 lines
2506 bytes
2506 bytes
Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomości news:hfc1k5$hdn$1@news.onet.pl... > > >> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomoci news:hfage0$bhk$1@news.interia.pl... >>> Witam, >>> >>> mam następujący problem. Chce zmierzyć odległość pomiędzy dwoma >>> punktami leżącymi na elipsoidzie. >>> Żeby to zrobić trzeba najpierw przeciąć elipsoidę płaszczyzną >>> przechodzącą przez co najmniej 3 punkty leżące na elipsoidzie. >> >> Może czego nie łapię, ale moim zdaniem trzeba najpierw okrelić, >> którš płaszczyznš powiniene cišć, i to wcale nie będzie proste. > > Okrelenie, którš płaszczyznš trzeba cišć nie jest trudne - aby > wyznaczyć równanie płaszczyzny potrzeba nam 3 punktów z czego 2 > już mamy dane i leżš one na elipsoidzie. 3 punkt można wyznaczyć > jako punkt leżšcy np w połowie odległoci pomiędzy danymi dwoma. > Np. niech te dwa punkty majš współrzędne (phi1, theta1) > (phi2, theta2) to punkt leżšcy pomiędzy nimi będzie miał > współrzędne [(phi1+phi2)/2; (theta1+theta2)/2] Czyżby...? Niech jeden punkt końcowy będzie phi1 = 1°, theta1 = 0° a drugi phi2 = 1°, theta2 = 180° (według oznaczeń OP, Macieja Rychtera; według oznaczeń przyjętych w geografii i nawigacji byłoby to phi1 = phi2 = 89°, lambda1 = 0°, lambda2 = 180°). Gdzie wypadnie Twój punkt "leżący pomiędzy nimi"...? Maciek
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: Maciek
Date: Mon, 07 Dec 2009 08:55
Date: Mon, 07 Dec 2009 08:55
61 lines
4033 bytes
4033 bytes
Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał
w wiadomości news:hfekft$a28$1@news.onet.pl...
>
> Użytkownik "Maciej Woniak" <mlwozniak_nospam@wp.pl> napisał w wiadomoci news:hfdts2$179$1@inews.gazeta.pl...
>>
>> Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomoci news:hfc1k5$hdn$1@news.onet.pl...
>>> >
>>>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomoci news:hfage0$bhk$1@news.interia.pl...
>>>>> Witam,
>>>>>
>>>>> mam następujący problem. Chce zmierzyć odległość pomiędzy dwoma punktami leżącymi na elipsoidzie.
>>>>> Żeby to zrobić trzeba najpierw przeciąć elipsoidę płaszczyzną przechodzącą przez co najmniej 3 punkty leżące na elipsoidzie.
>>>>
>>>> Może czego nie łapię, ale moim zdaniem trzeba najpierw okrelić,
>>>> którš płaszczyznš powiniene cišć, i to wcale nie będzie proste.
>>>
>>> Okrelenie, którš płaszczyznš trzeba cišć nie jest trudne - aby wyznaczyć
>>> równanie płaszczyzny potrzeba nam
>>> 3 punktów z czego 2 już mamy dane i leżš one na elipsoidzie. 3 punkt można
>>> wyznaczyć jako punkt leżšcy np
>>> w połowie odległoci pomiędzy danymi dwoma. Np. niech te dwa punkty majš
>>> współrzędne (phi1, theta1) (phi2, theta2)
>>> to punkt leżšcy pomiędzy nimi będzie miał współrzędne [(phi1+phi2)/2;
>>> (theta1+theta2)/2]
>>
>> Nie dostaniesz w ten sposób najkrótszej drogi.
>> We sobie elipsoidę typu "kula spłaszczona" o równiku w
>> płaszczynie Z=0, i punkty, w których przecina o X.
>> Najkrótsza droga przez biegun, a Tobie wyjdzie po równiku.
>
> Poczytałem o ortodromie i wynika z tego, że aby jš wyznaczyć
> należy przecišć elipsoidę płaszczyznš przechodzšcš przez
> podane punkty A i B oraz rodek elipsoidy.
Czyżby....?
Weż elipsoidę o jednej osi ZNACZNIE dłższej od pozostałych,
np. a = b = 1, c = 1000 - równanie we współrz. kartezj.
x^2 + y^2 + (z/1000)^2 = 1.
Niech końcami szukanej drogi będą dwa punkty prostej
x = 0, z = 800.
Według Twojej metody trzeba wziąć przekrój płaszczyzną OYZ:
x = 0
- tylko że tak uzyskana droga prowadzi przez BIEGUN z=1000,
czyli ma długości NIE MNIEJ niż 400 (droga od równoleżnika
z=800 do bieguna z=1000 po powierzchni elipsoidy jest dłuższa
niż 200, droga powrotna tak samo).
Tymczasem jednak długość drogi pomiędzy DOWOLNYMI dwoma punktami
elipsoidy leżącymi w dowolnie wybranej płaszczyźnie z=const.
nie przekracza pi = 3,14159... - tyle bowiem wynosi połowa
obwodu przekroju z=0, a każdy inny przekrój z=const jest
od niego mniejszy. Dla wybranego powyżej przypadku z=800
mamy ponad dwukrotnie mniej, bowiem promień przekroju z=800
wynosi sqrt(0,2) stąd połowa obwodu = około 1,405.
Wygląda więc na to, że Twoja metoda nie daje *najkrótszej*
drogi -- 800 jest znacznie większe od 1,4 ....
Maciek
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: GrzybSon
Date: Mon, 07 Dec 2009 09:27
Date: Mon, 07 Dec 2009 09:27
61 lines
3463 bytes
3463 bytes
Użytkownik "Maciek" <maciek@elkomtech.com.pl.nospam> napisał w wiadomo¶ci news:hfieke$10h$1@opal.futuro.pl... > > Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał > w wiadomo¶ci news:hfc1k5$hdn$1@news.onet.pl... >> > >>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomości >>> news:hfage0$bhk$1@news.interia.pl... >>>> Witam, >>>> >>>> mam następuj±cy problem. Chce zmierzyć odległo¶ć pomiędzy dwoma >>>> punktami leż±cymi na elipsoidzie. >>>> Żeby to zrobić trzeba najpierw przeci±ć elipsoidę płaszczyzn± >>>> przechodz±c± przez co najmniej 3 punkty leż±ce na elipsoidzie. >>> >>> Może czegoś nie łapię, ale moim zdaniem trzeba najpierw określić, >>> którą płaszczyzną powinieneś ciąć, i to wcale nie będzie proste. >> >> Określenie, którą płaszczyzną trzeba ciąć nie jest trudne - aby >> wyznaczyć równanie płaszczyzny potrzeba nam 3 punktów z czego 2 >> już mamy dane i leżą one na elipsoidzie. 3 punkt można wyznaczyć >> jako punkt leżący np w połowie odległości pomiędzy danymi dwoma. >> Np. niech te dwa punkty mają współrzędne (phi1, theta1) >> (phi2, theta2) to punkt leżący pomiędzy nimi będzie miał >> współrzędne [(phi1+phi2)/2; (theta1+theta2)/2] > > Czyżby...? > > Niech jeden punkt końcowy będzie phi1 = 1°, theta1 = 0° > a drugi phi2 = 1°, theta2 = 180° (według oznaczeń OP, > Macieja Rychtera; według oznaczeń przyjętych w geografii > i nawigacji byłoby to phi1 = phi2 = 89°, lambda1 = 0°, > lambda2 = 180°). > Gdzie wypadnie Twój punkt "leż±cy pomiędzy nimi"...? Spokojnie, w moim ostatnim po¶cie o ortodromie przyj±łem, że ten 3 punkt nie jest wyznaczany z powyższej formuły tylko przyjmowane s± współrzędne pocz±tku układu współrzędnych czyli (0,0,0) w kartezjańskich. > > > Maciek > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur > wirusow 4665 (20091206) __________ > > Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. > > http://www.eset.pl lub http://www.eset.com > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4665 (20091206) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: GrzybSon
Date: Mon, 07 Dec 2009 10:04
Date: Mon, 07 Dec 2009 10:04
101 lines
5190 bytes
5190 bytes
Użytkownik "Maciek" <maciek@elkomtech.com.pl.nospam> napisał w wiadomo¶ci news:hfiftl$3jb$1@opal.futuro.pl... > > Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał > w wiadomo¶ci news:hfekft$a28$1@news.onet.pl... >> >> Użytkownik "Maciej Woźniak" <mlwozniak_nospam@wp.pl> napisał w wiadomości >> news:hfdts2$179$1@inews.gazeta.pl... >>> >>> Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomości >>> news:hfc1k5$hdn$1@news.onet.pl... >>>> > >>>>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał w wiadomości >>>>> news:hfage0$bhk$1@news.interia.pl... >>>>>> Witam, >>>>>> >>>>>> mam następuj±cy problem. Chce zmierzyć odległo¶ć pomiędzy dwoma >>>>>> punktami leż±cymi na elipsoidzie. >>>>>> Żeby to zrobić trzeba najpierw przeci±ć elipsoidę płaszczyzn± >>>>>> przechodz±c± przez co najmniej 3 punkty leż±ce na elipsoidzie. >>>>> >>>>> Może czegoś nie łapię, ale moim zdaniem trzeba najpierw określić, >>>>> którą płaszczyzną powinieneś ciąć, i to wcale nie będzie proste. >>>> >>>> Określenie, którą płaszczyzną trzeba ciąć nie jest trudne - aby >>>> wyznaczyć >>>> równanie płaszczyzny potrzeba nam >>>> 3 punktów z czego 2 już mamy dane i leżą one na elipsoidzie. 3 punkt >>>> można >>>> wyznaczyć jako punkt leżący np >>>> w połowie odległości pomiędzy danymi dwoma. Np. niech te dwa punkty >>>> mają >>>> współrzędne (phi1, theta1) (phi2, theta2) >>>> to punkt leżący pomiędzy nimi będzie miał współrzędne [(phi1+phi2)/2; >>>> (theta1+theta2)/2] >>> >>> Nie dostaniesz w ten sposób najkrótszej drogi. >>> Weź sobie elipsoidę typu "kula spłaszczona" o równiku w >>> płaszczyźnie Z=0, i punkty, w których przecina oś X. >>> Najkrótsza droga przez biegun, a Tobie wyjdzie po równiku. >> >> Poczytałem o ortodromie i wynika z tego, że aby ją wyznaczyć >> należy przeciąć elipsoidę płaszczyzną przechodzącą przez >> podane punkty A i B oraz środek elipsoidy. > > Czyżby....? > Co¶ tu strasznie pogmatwałe¶ i nie bardzo mogę to sobie jako¶ wyobrazić. Proponuje zrobić to na konkretnych liczbach. > Weż elipsoidę o jednej osi ZNACZNIE dłższej od pozostałych, > np. a = b = 1, c = 1000 - równanie we współrz. kartezj. Czyli bieguny znajduj± się osi Z - przyjmijmy, że biegun N na półosi dodatniej Z. Współrzędne bieguna N (0,0,1000). > x^2 + y^2 + (z/1000)^2 = 1. > Niech końcami szukanej drogi będ± dwa punkty prostej > x = 0, z = 800. Teraz gdzie te punkty umiejscowić? Podaj współrzędne kartezjańskie. > Według Twojej metody trzeba wzi±ć przekrój płaszczyzn± OYZ: > x = 0 > - tylko że tak uzyskana droga prowadzi przez BIEGUN z=1000, > czyli ma długo¶ci NIE MNIEJ niż 400 (droga od równoleżnika > z=800 do bieguna z=1000 po powierzchni elipsoidy jest dłuższa > niż 200, droga powrotna tak samo). > Tymczasem jednak długo¶ć drogi pomiędzy DOWOLNYMI dwoma punktami > elipsoidy leż±cymi w dowolnie wybranej płaszczyĽnie z=const. > nie przekracza pi = 3,14159... - tyle bowiem wynosi połowa > obwodu przekroju z=0, a każdy inny przekrój z=const jest > od niego mniejszy. Dla wybranego powyżej przypadku z=800 > mamy ponad dwukrotnie mniej, bowiem promień przekroju z=800 > wynosi sqrt(0,2) st±d połowa obwodu = około 1,405. > > Wygl±da więc na to, że Twoja metoda nie daje *najkrótszej* > drogi -- 800 jest znacznie większe od 1,4 .... > > > Maciek > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur > wirusow 4665 (20091206) __________ > > Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. > > http://www.eset.pl lub http://www.eset.com > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4665 (20091206) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: Maciek
Date: Mon, 07 Dec 2009 10:22
Date: Mon, 07 Dec 2009 10:22
86 lines
4129 bytes
4129 bytes
Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał w wiadomości news:hfik07$dq7$1@news.onet.pl... > > Użytkownik "Maciek" <maciek@elkomtech.com.pl.nospam> > napisał w wiadomości news:hfiftl$3jb$1@opal.futuro.pl... >> >> Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał >> w wiadomości news:hfekft$a28$1@news.onet.pl... >>> >>> Użytkownik "Maciej Woniak" <mlwozniak_nospam@wp.pl> napisał >>> w wiadomoci news:hfdts2$179$1@inews.gazeta.pl... >>>> >>>> Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał >>>> w wiadomoci news:hfc1k5$hdn$1@news.onet.pl... >>>>>> >>>>>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał >>>>>> w wiadomoci news:hfage0$bhk$1@news.interia.pl... >>>>>>> >>>>>>> (.................) >>>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>> >>>> >>>> (.................) >>>> >>> >>> Poczytałem o ortodromie i wynika z tego, że aby jš wyznaczyć >>> należy przecišć elipsoidę płaszczyznš przechodzšcš przez >>> podane punkty A i B oraz rodek elipsoidy. >> >> Czyżby....? >> > > Coś tu strasznie pogmatwałeś i nie bardzo mogę to sobie > jakoś wyobrazić. Proponuje zrobić to na konkretnych liczbach. Ale po co? Przecież konkretne liczby nie zmienią przebiegu wnioskowania ani konkluzji... > >> Weż elipsoidę o jednej osi ZNACZNIE dłższej od pozostałych, >> np. a = b = 1, c = 1000 - równanie we współrz. kartezj. > > Czyli bieguny znajdują się osi Z - przyjmijmy, że biegun N > na półosi dodatniej Z. > Współrzędne bieguna N (0,0,1000). > >> x^2 + y^2 + (z/1000)^2 = 1. >> Niech końcami szukanej drogi będą dwa punkty prostej >> x = 0, z = 800. > > Teraz gdzie te punkty umiejscowić? Podaj współrzędne kartezjańskie. No przecież podałem! Napisałem chyba wyraźnie...? x=0, z=800. Wartość trzeciej współrzędnej, y, wynika z równania elipsoidy (ściślej są to dwie wartości o przeciwnych znakach) - tyle że ona nie jest specjalnie potrzebna, do całości argumentacji wystarcza, że 0 < |y| < 1. > >> Według Twojej metody trzeba wziąć przekrój płaszczyzną OYZ: >> x = 0 >> - tylko że tak uzyskana droga prowadzi przez BIEGUN z=1000, >> czyli ma długości NIE MNIEJ niż 400 (droga od równoleżnika >> z=800 do bieguna z=1000 po powierzchni elipsoidy jest dłuższa >> niż 200, droga powrotna tak samo). >> Tymczasem jednak długość drogi pomiędzy DOWOLNYMI dwoma punktami >> elipsoidy leżącymi w dowolnie wybranej płaszczyźnie z=const. >> nie przekracza pi = 3,14159... - tyle bowiem wynosi połowa >> obwodu przekroju z=0, a każdy inny przekrój z=const jest >> od niego mniejszy. Dla wybranego powyżej przypadku z=800 >> mamy ponad dwukrotnie mniej, bowiem promień przekroju z=800 >> wynosi sqrt(0,2) stąd połowa obwodu = około 1,405. >> >> Wygląda więc na to, że Twoja metoda nie daje *najkrótszej* >> drogi -- 800 jest znacznie większe od 1,4 .... Maciek
Re: Przecięcie elipsoidy z płaszczyzn? przechodz?c? przez 2 punkty leż?ce na elipsoidzie
Author: Mirek
Date: Mon, 07 Dec 2009 11:32
Date: Mon, 07 Dec 2009 11:32
18 lines
1544 bytes
1544 bytes
On pią, 04 gru 2009 21:18:46 in article news:<hfbqrf$a4t$1@inews.gazeta.pl> Maciej Woźniak wrote: > Właściwie, to wcale nie założyłbym się, że najkrótsza droga > pomiędzy 2-ma dowolnymi punktami elipsoidy jest zawsze na jednej > płaszczyźnie. Ale nigdy z elipsoidami nie miałem do czynienia. Masz rację: A geodesic is the shortest path between two points. In the plane, the geodesics are straight lines. On the sphere, geodesics are great circles. On the ellipsoid of revolution, the geodesic line has a double curvature and shows `S-shape pattern' between two normal sections. ;)
Re: Przecięcie elipsoidy z płaszczyzn? przechodz?c? przez 2 punkty leż?ce na elipsoidzie
Author: Mirek
Date: Mon, 07 Dec 2009 12:05
Date: Mon, 07 Dec 2009 12:05
1 lines
1041 bytes
1041 bytes
http://en.wikipedia.org/wiki/Vincenty's_formulae
Re: Przecięcie elipsoidy z płaszczyzn? przechodz?c? przez 2 punkty leż?ce na elipsoidzie
Author: GrzybSon
Date: Mon, 07 Dec 2009 14:11
Date: Mon, 07 Dec 2009 14:11
31 lines
2064 bytes
2064 bytes
Użytkownik "Mirek" <pisz_na.mirek@dionizos.zind.ikem.pwr.wroc.pl> napisał w wiadomości news:hfir1q$ocl$1@inews.gazeta.pl... > http://en.wikipedia.org/wiki/Vincenty's_formulae Spoko, iteracyjny algorytm Tadka już mam zaimplementowany. Zresztą on tylko zwraca odległość pomiędzy punktami. Chodzi mi bardziej o narysowanie takiej ortodromy w przestrzeni 3d mając współrzędne 2 punktów na powierzchni elipsoidy. > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur > wirusow 4666 (20091207) __________ > > Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. > > http://www.eset.pl lub http://www.eset.com > > > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4666 (20091207) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: Maciek
Date: Tue, 08 Dec 2009 12:20
Date: Tue, 08 Dec 2009 12:20
55 lines
2673 bytes
2673 bytes
Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał
w wiadomości news:hfekft$a28$1@news.onet.pl...
>
> (...)
>>
>> (...)
>>>>
>>>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał
>>>> w wiadomoci news:hfage0$bhk$1@news.interia.pl...
>>>>> Witam,
>>>>>
>>>>> mam następujący problem. Chce zmierzyć odległość pomiędzy dwoma
>>>>> punktami leżącymi na elipsoidzie. Żeby to zrobić trzeba najpierw
>>>>> przeciąć elipsoidę płaszczyzną przechodzącą przez co najmniej 3
>>>>> punkty leżące na elipsoidzie.
>>>>
>>>>
>>>
>>> (................)
>>>
>>>
>>
>> (...............)
>>
>
> Poczytałem o ortodromie i wynika z tego, że aby jš wyznaczyć
> należy przecišć elipsoidę płaszczyznš przechodzšcš przez
> podane punkty A i B oraz rodek elipsoidy.
Inny kontrprzykład - prawie-że-dysk, czyli elipsoida
obrotowa mocno spłaszczona (poprzednia była wydłużona):
x^2 + y^2 + (1000 z)^2 = 1.
Niech końcami drogi będą punkty
(20/101, 99/101, 0) oraz (20/101, -99/101, 0)
Według Twojej metody trzeba wziąć przekrój płaszczyzną OXY:
z = 0
- tylko że tak uzyskana droga prowadzi RÓWNIKIEM z=0, dając
łuk o długości ponad 2,74 (dokładnie: 2 arcsin(99/101)).
Tymczasem droga łuku wyznaczonego przekrojem x=20/101
nie przekracza 2, ponieważ jest to połowa obwodu elipsy
o dłuższej półosi 99/101 i krótszej półosi poniżej 1/1000.
Znów Twoja metoda nie daje *najkrótszej* drogi -- 2,74 jest
większe od 2 ....
Maciek
Re: Przecięcie elipsoidy z płaszczyzn? przechodz?c? przez 2 punkty leż?ce na elipsoidzie
Author: Mirek
Date: Tue, 08 Dec 2009 15:56
Date: Tue, 08 Dec 2009 15:56
49 lines
2579 bytes
2579 bytes
On pon, 07 gru 2009 15:11:43 in article news:<hfj2f0$pat$1@news.onet.pl>
GrzybSon wrote:
>> __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur
>> wirusow 4666 (20091207) __________
>>
>> Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus.
>>
>> http://www.eset.pl lub http://www.eset.com
>>
>>
>>
>
>
>
> __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4666 (20091207) __________
>
> Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus.
>
> http://www.eset.pl lub http://www.eset.com
Wyłącz dopisywanie teg badziewia :(
>
> Użytkownik "Mirek" <pisz_na.mirek@dionizos.zind.ikem.pwr.wroc.pl> napisał w
> wiadomości news:hfir1q$ocl$1@inews.gazeta.pl...
>> http://en.wikipedia.org/wiki/Vincenty's_formulae
>
> Spoko, iteracyjny algorytm Tadka już mam zaimplementowany. Zresztą on tylko
> zwraca odległość pomiędzy punktami.
> Chodzi mi bardziej o narysowanie takiej ortodromy w przestrzeni 3d mając
> współrzędne 2 punktów
> na powierzchni elipsoidy.
Spoko:
- Pan Tadeusz pisał o elipsoidzie dwuosiowej, ty chciałeś
ogólniejszą trójosiową.
- Jeżeli wystarcza ci dwuosiowa, to Pan Tadeusz podaje dwa algorytmy:
a) Inverse: Dla punktów P1 i P2 wyznaczasz odległość s i
azymut a1
b) Direct: Dla dowolnej odległości s_i < s i azymutu a1
wyznaczasz punkt P_i i masz punkty trajektorii
Na Wiki angielskiej i hiszpańskiej są odsyłacze do różnych kodów (nie
sprawdzałem).
Re: Przecięcie elipsoidy z płaszczyzn? przechodz?c? przez 2 punkty leż?ce na elipsoidzie
Author: GrzybSon
Date: Wed, 09 Dec 2009 07:40
Date: Wed, 09 Dec 2009 07:40
42 lines
2665 bytes
2665 bytes
>> Użytkownik "Mirek" <pisz_na.mirek@dionizos.zind.ikem.pwr.wroc.pl> napisał >> w >> wiadomości news:hfir1q$ocl$1@inews.gazeta.pl... >>> http://en.wikipedia.org/wiki/Vincenty's_formulae >> >> Spoko, iteracyjny algorytm Tadka już mam zaimplementowany. Zresztą on >> tylko >> zwraca odległość pomiędzy punktami. >> Chodzi mi bardziej o narysowanie takiej ortodromy w przestrzeni 3d mając >> współrzędne 2 punktów >> na powierzchni elipsoidy. > > Spoko: > > - Pan Tadeusz pisał o elipsoidzie dwuosiowej, ty chciałeś > ogólniejszą trójosiową. > > - Jeżeli wystarcza ci dwuosiowa, to Pan Tadeusz podaje dwa algorytmy: > > a) Inverse: Dla punktów P1 i P2 wyznaczasz odległość s i > azymut a1 > > b) Direct: Dla dowolnej odległości s_i < s i azymutu a1 > wyznaczasz punkt P_i i masz punkty trajektorii > > Na Wiki angielskiej i hiszpańskiej są odsyłacze do różnych kodów (nie > sprawdzałem). > Gdzieś doczytałem się, że aby policzyć najkrótszą drogę na dowolnej elipsoidzie. Trzeba obliczyć szereg równań różniczkowych co na kartce papieru może być bardzo pracochłonne nie mówiąc już o ubraniu tego w algorytm. Więc dla najkrótszej odległości na elipsoidzie pozostanę przy Tadku. __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow 4668 (20091207) __________ Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus. http://www.eset.pl lub http://www.eset.com
Re: Przecięcie elipsoidy z płaszczyzną przechodzącą przez 2 punkty leżące na elipsoidzie
Author: Maciek
Date: Wed, 16 Dec 2009 13:01
Date: Wed, 16 Dec 2009 13:01
55 lines
2785 bytes
2785 bytes
Użytkownik "Maciek" <maciek@elkomtech.com.pl.nospam> napisał w wiadomości news:hflg9t$602$1@opal.futuro.pl... > > Użytkownik "GrzybSon" <mrychter@kenbit.pl> napisał > w wiadomości news:hfekft$a28$1@news.onet.pl... >> >> (...) >>> >>> (...) >>>>> >>>>> Użytkownik "Maciej Rychter" <mrychter@kenbit.pl> napisał >>>>> w wiadomoci news:hfage0$bhk$1@news.interia.pl... >>>>>> Witam, >>>>>> >>>>>> mam następujący problem. Chce zmierzyć odległość >>>>>> pomiędzy dwoma punktami leżącymi na elipsoidzie. (...) >>>>> >>>> >>>> (........) >>>> >>> >>> (........) >>> >> >> Poczytałem o ortodromie i wynika z tego, że aby jš wyznaczyć >> należy przecišć elipsoidę płaszczyznš przechodzšcš przez >> podane punkty A i B oraz rodek elipsoidy. > > > Inny kontrprzykład - prawie-że-dysk, czyli elipsoida > obrotowa mocno spłaszczona (poprzednia była wydłużona): > > x^2 + y^2 + (1000 z)^2 = 1. > > Niech końcami drogi będą punkty > > (20/101, 99/101, 0) oraz (20/101, -99/101, 0) > > Według Twojej metody trzeba wziąć przekrój płaszczyzną OXY: > z = 0 > - tylko że tak uzyskana droga prowadzi RÓWNIKIEM z=0, dając > łuk o długości ponad 2,74 (dokładnie: 2 arcsin(99/101)). > > Tymczasem droga łuku wyznaczonego przekrojem x=20/101 > nie przekracza 2, ponieważ jest to połowa obwodu elipsy > o dłuższej półosi 99/101 i krótszej półosi poniżej 1/1000. Co ciekawe, przykłady te podpowiadają, że na elipsoidzie - nawet obrotowej - istnieją pary punktów, dla których istnieją DWIE najkrótsze drogi, chociaż punkty te nie są antypodyczne. Maciek
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads