Janus wrote:
> Hvad er den hurtigste måde at se om en vektor givet ved et start- og et
> slut-punkt krydser en trekant givet ved et hjørnepunkt og to vektorer?
Udregn punktet i midten af trekanten, og udregn den korteste afstand
mellem linien og dette punkt. Er denne større end den største afstand
mellem trekantens midtpunkt og dens hjørner så går linien ikke mellem
trekanten.
Er den mindrer så kan linien krydse eller ikke.
Så ville jeg gøre som dig, finde ligningen for det plan trekanten
ligger i, og finde det (hvis det eksistere) punkt hvor linien
skærer planen.
Du kan så opfatte de tre sider i din trekant som bestående af
3 vektorer, der går fra hoved til hale af den foregående.
Hvis punktet ligger til højre for alle vektorer eller til venstre
for alle vektorer, så ligger det inde i trekanten. For at udregne det
kan du projicere punktet ind på den ortogonale vektor til hver af
de tre sider, denne projektion skal have det samme fortegn for alle.
--
Mvh. Carsten Svaneborg
http://www.softwarepatenter.dk