Avatar billede Slettet bruger
08. februar 2010 - 18:50 Der er 1 løsning

Matematik/algoritmik: Test af vektorers skæring

Halløj,

Dette spørgsmål er nok mere algoritmisk end direkte relateret til Flash, men jeg kunne ikke finde et bedre sted at placere det.

Hvad er den mest effektive måde at foretage test af vektorers skæring eller "kollision"? Jeg spekulerer over en mulighederne for en simpel fysikmotor til et todimensionalt skydespil og repræsentation af skudbaner og solide barrierer som vektorer (førstnævnte med et udgangspunkt og sidstnævnte afgrænset ved to punkter). Spørgsmålet er, hvordan jeg mest effektivt kan bestemme, hvilke barrikader (linjestykker givet ved vektorer), et skud affyret i en bestemt retning fra et bestemt punkt passerer igennem, i hvilke punkter "kollisionerne" sker, såvel som hvilke barrikader skudet først gennemtrænger.

Jeg er selv kommet frem til en løsning, hvor jeg for hver barrikade udfører et stykke kode, der afgør, hvor på den repræsenterende vektor, skuder vil ramme. Herefter testes, om dette punkt ligger inden for de to afgrænsende punkter for barrikaden (repræsenterende enderne). Endeligt bestemmes afstanden fra udgangspunktet til hvert af de gyldige skæringspunkter, og det nærmeste vælges som kollisionspunkt.

Lyder det fornuftigt? Hvordan kan detaljerne udføres, eller hvordan kan problemstillingen bedre gribes an?

Takker :)
Avatar billede Slettet bruger
18. august 2010 - 17:27 #1
Lukket.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester