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 :)
