Lze převrátit slovo (16bit) jako čtverec? (90°) – Matematika – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Lze převrátit slovo (16bit) jako čtverec? (90°) – Matematika – Fórum – Programujte.comLze převrátit slovo (16bit) jako čtverec? (90°) – Matematika – Fórum – Programujte.com

 

Matěj Andrle+1
Grafoman
12. 9. 2014   #1
-
0
-

Dobrý den,
vyjádřil jsem čtverec 4*4 pomocí slova - kupříkladu:

0000
0100
1110
0000

V praxi to pomáhá vykreslit obrazec ve čtvercové ploše a tento obrazec (jedničky) bych chtěl převrátit jako obrázek. Moc se mi nechce jej animovat - mít pole jednotlivých poloh (celkem 4). A tak se ptám - dalo by se do toho strkat (o 90° zleva doprava) nějak matematicky? (bitový posun, či tak) Rozvedu příklad výše:

0000
0100
1110
0000

0000
0100
0110
0100

0000
0000
1110
0100

0000
0100
1100
0100

Děkuji.

Nahlásit jako SPAM
IP: 78.136.166.–
Flowy0
Věrný člen
13. 9. 2014   #2
-
+1
-
Zajímavé
Kit +
Nahlásit jako SPAM
IP: 95.103.149.–
https://github.com/Flowy
Matěj Andrle+1
Grafoman
13. 9. 2014   #3
-
0
-

#2 Flowy
Pěkné, ovšem jak přesně to mohu aplikovat na "short int"/"word"? Důvod proč chci plácat výpočetním výkonem je prostý - otáčení má být cyklické (pročež s polem bych musel mít podmínku na poslední index) a navíc jen na popud uživatele - tož se to spustí jednou za čas...

Nahlásit jako SPAM
IP: 78.136.149.–
Flowy0
Věrný člen
13. 9. 2014   #4
-
0
-

short int/word je jednorozmerny objekt ... ak do nej nejakym sposobom ulozis dvojrozmerny objekt tak je to stale jednorozmerne a teda na to nedokazes aplikovat funkcie z 2D sveta (ak aj ano tak je to skor nahoda) ... ani jednoduchy posun po x osi by ti nefungoval (tento by sa dal ale na to by si musel poznat rozmery 2d objektu a teda by si to de facto konvertoval na 2d objekt ale zaroven s tym mal zbytocne problemy)

preco je taky problem to ukladat ako normalny 2d objekt?

Nahlásit jako SPAM
IP: 95.103.149.–
https://github.com/Flowy
Matěj Andrle+1
Grafoman
13. 9. 2014   #5
-
0
-

#4 Flowy
2 problémy přesně:

Políčková grafika. Tedy každé políčko má efekt, aby vypadalo 3D - tento efekt by při převrácení vypadal divně (Černý pruh jako stín nahoře, namísto dole atp.) A navíc potřebuji testovat každou řadu políček zvlášť - tedy mít uloženo každé políčko - celý objekt je mi k ničemu... Poli se chci vyhnout kvůli procházení - takto mi stačí maximálně bitový součet. I když je to již celkem jedno - nyní mám pole short integrů... (A cyklicky inkriminuji index - jak dojde přes max, hned je 0.)

Opět políčková grafika - každé políčko musí mít specifické údaje -> o barvě aj.

Nahlásit jako SPAM
IP: 78.136.149.–
Kit+15
Guru
13. 9. 2014   #6
-
0
-

#5 Matěj Andrle
Tohle se obvykle dělá tak, že máš 4 verze obrázků, které střídáš podle potřeby. Výpočet by zdržoval.

Pokud tě však doba výpočtu netrápí, převeď to do komplexní roviny a vynásob konstantou i, tedy imaginární jednotkou.

Pomocí bitových operací a posunů bys to měl také zvládnout, ale to už není tak matematické.

Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:221:5...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Matěj Andrle+1
Grafoman
13. 9. 2014   #7
-
0
-

#6 Kit
Však mám pole short integrů... (Nic nepočítám, jen vykresluji obrázky.) Stále jsem se nerozhodl, jaký model použiji. Láká mne zmapovat celou plochu a jen ovládat každé políčko. Chci se zkrátka vyhnout obrovskému krámu se spoustou děr...

Nahlásit jako SPAM
IP: 78.136.149.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý