Matematické Fórum

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

#1 02. 11. 2014 17:16

Hertas
Příspěvky: 217
Škola: FJFI CVUT(12-15, bc)
Pozice: student
Reputace:   17 
 

průsečík dvou úseček

Zdravím,

píšu program, který nalezne takové dvojice úseček (z n úseček), které se protínají
úsečky jsou v $\mathbb{R}^2$ a jsou zadané pomocí počátečního a koncového bodu
napadlo mě sestrojit vždy rovnice obou úseček v podobě lineární funkce, najít (pokud existuje) společný bod a pak zjistit, zda leží v obou úsečkách, problém je, že mi to nepřijde jako dostatečně efektivní řešení a proto bych se chtěl zeptat, jestli někdo neví o lepším způsobu

předem děkuji za ochotu :)

Offline

  • (téma jako vyřešené označil(a) Hertas)

#2 02. 11. 2014 17:53

zdenek1
Administrátor
Místo: Poděbrady
Příspěvky: 12436
Reputace:   897 
Web
 

Re: průsečík dvou úseček

↑ Hertas:
Nemusíš na to jít přes lineární fce, ale přes parametrické vyjádření
Když bude úsečka
$AB:\begin{cases}x=x_A+(x_B-x_A)t\\y=y_A+(y_B-y_A)t\end{cases}, 0\le t\le1$
a úsečka
$CD:\begin{cases}x=x_C+(x_D-x_C)s\\y=y_C+(y_D-y_C)s\end{cases}, 0\le s\le1$

tak ti stačí řešit soustavu
$\begin{cases}x_A+(x_B-x_A)t=x_C+(x_D-x_C)s\\y_A+(y_B-y_A)t=y_C+(y_D-y_C)s\end{cases}$
pro neznámé $t,s$ a testovat jestli jsou obě mezi nulou a jedničkou.


Pořádek je pro blbce, inteligent zvládá chaos!

Offline

 

#3 02. 11. 2014 21:12

Hertas
Příspěvky: 217
Škola: FJFI CVUT(12-15, bc)
Pozice: student
Reputace:   17 
 

Re: průsečík dvou úseček

tak tohle bude lepší, díky moc :)

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson