Kolizje
Ostatnio zmodyfikowano 2011-07-05 23:53
diego997 Temat założony przez niniejszego użytkownika |
Kolizje » 2011-07-05 22:16:07 Czy wy rozumiecie ten zapis czy po prostu za każdym razem kopiujecie kiedy potrzebujecie ?? Jeżeli wariant pierwszy to prosił bym o wytłumaczenie :) * x1 - współrzędna x lewego górnego rogu naszego prostokąta. * y1 - współrzędna y lewego górnego rogu naszego prostokąta. * w1 - wysokość pierwszego prostokąta. * s1 - szerokość pierwszego prostokąta. bool kolizja( int x1, int y1, int s1, int w1, int x2, int y2, int s2, int w2 ) { if( x2 <= x1 + s1 && x2 > x1 && y2 >= y1 && y2 <= y1 + w1 ) return true; else if( x2 <= x1 + s1 && x2 > x1 && y2 + w2 >= y1 && y2 + w2 <= y1 + w1 ) return true; else if( x2 + s2 <= x1 + s1 && x2 + s2 > x1 && y2 >= y1 && y2 <= y1 + w1 ) return true; else if( x2 + s2 <= x1 + s1 && x2 + s2 > x1 && y2 + w2 >= y1 && y2 + w2 <= y1 + w1 ) return true; else return false; };
|
|
DejaVu |
» 2011-07-05 22:33:44 Jeżeli brałeś funkcję do wykrywania kolizji z kursu Allegro to znaczy, że jest ona zła. Dodam, że jest ona zła bo kojarzę ją. Na zakończenie dodam, że warunki są bezsensowne i da się to zrobić w jednej linijce oraz pisałem wiele razy poprawne rozwiązanie na forum. |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-05 22:54:30 A mógł byś mi tylko raz to wytłumaczyć albo podać linka, tak mi na tym zależy |
|
kamillo121 |
» 2011-07-05 22:56:57 Jak Ci na tym bardzo zależy to użyj wyszukiwarki po prawej strony o tytule "Pełnotekstowe wyszukiwanie". Ten temat o kolizjach był tyle razy wałkowany, że wątpię by komuś się chciało znowu to rozpisywać.
A co do zrozumienia to jeżeli tego nie rozumiesz to po prostu narysuj dwa kształty na kartce, oznacz boki jakimiś literkami i cyframi i sobie rozpisz. |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-07-05 23:47:33 Własnie starałęm się tak zrozumieć ta funkcje powyżej, dobrze jednak że nie pasowała ona dejavu :D. To w takim razie mam takie pytanie jest sobie prostokąt:
1 2 *-----* | | *-----* 3 4
I powiedzcie mi czy to co napiszę poniżej jest dobrze.
*- są to wierzchołki k- wartość;
1- (x,y) 2- (x+k,y) 3- (x,y+k) 4- (x+k,y+k)
|
|
kamillo121 |
» 2011-07-05 23:53:25 Tak o ile k to długość (w tym wypadku) boku kwadratu. |
|
« 1 » |