Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Ahoj,
potřebuji co nejjednodušším způsobem zjistit, zda se zadaný bod náchází uvnitř elipsy zadané délkami os a a b a středem nebo trojúhelníku daného rohem a dvěma délkami stran. (už jsem tuhle matematiku zapomněl a bohužel nemám čas si ji zopakovat, tak se ptám přímo na řešení).
Potřebuji co nejjednodušší řešení - např. pokud by to šlo pomocí ohnisek apod. (už si skoro nic nepamatuju :( )
Celé je to kvůli algoritmu pro maskování rohů fotky, takže mi stačí zadat o jaký roh se jedná, rozměry A a B a mám všechny potřebné údaje. To samé platí i pro trojůhelník, který bude mít vrchol v jednom z rohů a strany A a B budou souběžné s hranami obrazu. (To jen pro vysvětlení že tyto údaje jsou dostačující pro přesné určení trojúhelníku v souřadném systému).
Offline
Zdravím,
pokud vám jde o hotový výpočet, tak třeba v wxMaximě je to:
Test(a,b,x,y):=block([u],
u: atan2(y,x),
is((((a*cos(u))^2+(b*sin(u))^2)-(x^2+y^2))>=0)
);V excelu to je trochu složitější (VBA neumí funkci atan2, tak se musí napsat):
Private Const Pi As Double = 3.14159265358979
Public Function Atn2(y As Double, x As Double) As Double
If x > 0 Then
Atn2 = Atn(y / x)
ElseIf x < 0 Then
Atn2 = Sgn(y) * (Pi - Atn(Abs(y / x)))
ElseIf y = 0 Then
Atn2 = 0
Else
Atn2 = Sgn(y) * Pi / 2
End If
End Function
Function Test(a,b,x,y)
Dim u, z
u = Atn2(y,x)
z = ((a*Cos(u))^2+(b*Sin(u))^2)-(x^2+y^2)
if z>=0 Then Test = 1 Else Test = 0
End FunctionVolání funkce je
Test(a,b,x,y)
přičemž
a
jsou poloosy elipsy a
a
jsou souřadnice testovaného bodu. Vrací hodnotu
nebo
pokud test byl úspěšný, jinak
nebo
.
Offline
↑ HULKEE:
Ahoj.
Když
jsou ohniska a
je délka hlavní poloosy dané elipsy, pak obecný bod
příslušné roviny leží
- na elipse, právě když
,
- "uvnitř" elipsy, právě když
,
- "vně" elipsy, právě když
.
Symbol
zde značí vzdálenost bodů
.
Offline