View previous topic :: View next topic |
Author |
Message |
Vecis
Joined: 01 Jan 2007 Posts: 144
|
Posted: Thu Aug 06, 2009 2:13 pm Post subject: Sadursme ar slīpiem objektiem |
|
Tik tālu māku izmantot tikai AABB sadursmes, bet tas der tikai taisnstūra formas objektiem. Visu veidoju uz Python'a un Symbian, šaubos vai tur kādu module atradīšu šādam nolūkam. Ir kādas idejas kā piemēram vienai slīpai malai pārbaudīt sadursmi ar kādu citu objektu? |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Thu Aug 06, 2009 2:37 pm Post subject: |
|
Slīpa mala - tas ir kas? Nogrieznis?
Ja tas ir nogrieznis, kas kustās, tad tā kustība laikā veido paralelogramu - attiecīgi meklē sadursmi savam objektam ar šo paralelogramu. |
|
Back to top |
|
|
Vecis
Joined: 01 Jan 2007 Posts: 144
|
Posted: Thu Aug 06, 2009 2:53 pm Post subject: |
|
Jā, nogrieznis. Nedaudz nepareizi laikam izteicos, kā to izdarīt prātā ir man skaidrs, bet nav ne jausmas kā lai to realizē kodā. |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Thu Aug 06, 2009 3:17 pm Post subject: |
|
To nu neviens cits bez tevis nezinās.
Mums nav ne jausmas ko rezultātā tev vajag (booleanu - true/false vai vispār sadursme notiek? laiku, kurā notiek sadursme?), ne arī ieejas datus - kas ir tas cits objekts (taisne? trijstūris? aplis?). |
|
Back to top |
|
|
Vecis
Joined: 01 Jan 2007 Posts: 144
|
Posted: Thu Aug 06, 2009 3:23 pm Post subject: |
|
Nu teiksim sadursmi starp 2 nogriežņiem,
No sākuma pietiktu ar to pašu true/false vai nav vai ir sadursme. |
|
Back to top |
|
|
bubu Indago Uzvarētājs
Joined: 23 Mar 2004 Posts: 3223 Location: Riga
|
Posted: Thu Aug 06, 2009 3:39 pm Post subject: |
|
Nu starp diviem nekustīgiem nogriežņiem matemātika ir vienkārša: http://ozviz.wasp.uwa.edu.au/~pbourke/geometry/lineline2d/
Ja abi kustās, tad padari vienu nogriezni nekustīgu - respektīvi no otrā nogriežņa ātruma atņem pirmā nogriežņa ātrumu. Tad būs jāpārbauda sadursme starp kustīgu & nekustīgu nogriezni.
Un sadursmē starp kustīgu - ar nekustīgo nogriezni daries tā kā sākumā teicu - to kustīgo uzskati par paralelogramu, un pārbaudi nekustīgā nogriežņa sadursmi ar četrstūri. Vienkāršoti izsakoties - jāpārbauda vai kaut viens nogriežņa galapunkts atrodas iekšpusē tam četrstūrim.
Te kautkāds risinājums ar visu pseidokodu: http://softsurfer.com/Archive/algorithm_0111/algorithm_0111.htm
Internetā var pameklēt ko citu vēl ar "line intersection convex polygon" keywordiem. |
|
Back to top |
|
|
Vecis
Joined: 01 Jan 2007 Posts: 144
|
Posted: Thu Aug 06, 2009 3:44 pm Post subject: |
|
Paldies, šķiet ka tik tālu saprotu, jāizmēģina. |
|
Back to top |
|
|
|