Ne znam da li pomazem, ali evo mog nacina:
Naka je centar elipsoida
![](https://static.elitesecurity.org/tex/49ef42b155a5665296cf3066c7e28ea7.png)
Jednacina tog tvog elipsoida je sad:
![](https://static.elitesecurity.org/tex/9f123c3eeca259f90eed6dabce5ea04a.png)
Neka je prava data izmedju dve tacke
![](https://static.elitesecurity.org/tex/b2ca2e3b06252d006e704619b2c9d629.png)
i
![](https://static.elitesecurity.org/tex/7fd39fe56d482edd8b34ea58f5988798.png)
i u parametarskom obliku, jednacina glasi:
![](https://static.elitesecurity.org/tex/ffddfe776323e64f1662e2a1ab140d72.png)
gde je t parametar izmedju 0 i 1. Ti ovaj nacin mozes da modifikujes u tvoj nacin (preko pravca), a mozes, posto ti ocigledno treba programski, da uzmes velike vrednosti tacke B.
Zamenom jednacine prave u jednacinu elipsoida, dobijes kvadratnu jednacinu po t, i da sad ne pisem sve, dobija se:
![](https://static.elitesecurity.org/tex/a9469edfee3e9394aa52a87633d9f8fe.png)
gde su a,b i c konstante kvadratne jednacine
(Proveri ti ovo jos jednom!)
E, sad, ukoliko je pocetna tacka prave unutar elipsoida (proveri da li je <1), sigurno ce ga seci i to jednom (poluprava). Koje resenje od ova dva ces uzeti je na tebi (moras nekako ispitati pravac, u zavisnosti koji od ovih gore nacina za predstavljanje prave koristis). Ukoliko je tacka napolju (opet zamena
![](https://static.elitesecurity.org/tex/cef99104f3dacf7e77f808b8e4e42117.png)
u jednacinu elipse i provera >1), trebalo bi, ukoliko nije tangenta, da opet sece dva puta (pretpostavljam da ovog puta uzimas u obzir oba resenja), ukoliko uopste sece. Znaci, samo ispitujes
![](https://static.elitesecurity.org/tex/27f355afe71717d0ad076bd1cb21877c.png)
i racunas t iz kvadratne, simple as that (ukoliko sam pogodio sta trazis)