Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Vojtech England Smid:21.3.2015 16:06

Zdravím, potřeboval bych poradit s vyřešením tohohle "tetrisu". Vůbec totiž nevím, jak z kostiček vytvořit tato písmenka a jak vyřešit kolize např. "A" s "O". Toto jsou jenom obrázky, z kódu nemám nic, absolutně nevím, jak začít

Editováno 21.3.2015 16:07
 
Odpovědět
21.3.2015 16:06
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na Vojtech England Smid
Jan Vargovský:21.3.2015 16:08

Jakým způsobem máš definovaný ten tvar?

 
Nahoru Odpovědět
21.3.2015 16:08
Avatar
hanpari
Tvůrce
Avatar
Odpovídá na Vojtech England Smid
hanpari:21.3.2015 21:51

Na každou kostičku potřebuješ dva body diagonály, dejme tomu levý spodní a pravý horní.
Za předpokladu že neřešíš rotace, není zjištění kolize dvou obdelníků neřešitelný problém.

Když máš Obdelník(P1, P2) pak Obdelník(P3, P4) s ním bude v kolizi, pokud alespoň jeden z jeho bodů se bude nacházet mezi body P1 a P2.

Asi takto. Je bod2 v obdelníku, který tvoří body bod1 a bod3? Ano, je :)

var bod1 = new Point(5,5);
var bod2 = new Point(3,3);
var bod3 = new Point(2,2);


bool kolize = (bod2.X <= bod1.X && bod2.X >= bod3.X)
                                &&
                          (bod2.Y <= bod1.Y && bod2.Y >= bod3.Y);

Samozřejmě si musíš dávat pozor na to, který bod je který.

Editováno 21.3.2015 21:52
 
Nahoru Odpovědět
21.3.2015 21:51
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.