Arkanoid pohyb míčku – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Arkanoid pohyb míčku – Java – Fórum – Programujte.comArkanoid pohyb míčku – Java – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Figa0
Super člen
6. 6. 2013   #1
-
0
-

Ahoj dělám jednoduchou variantu arkanoidu v Jave. Špatně mi funguje fyzika míčku. Míček má nějakou rychlost třeba 2px a nějaký úhel pohybu 0-360 stupňů. Míček se pak pohybuje dle tohoto vzorce:
 

ball.setX(ball.getX() + (int)(Math.cos(Math.toRadians(ball.angle)) * ball.speed));
ball.setY(ball.getY() + (int)(Math.sin(Math.toRadians(ball.angle)) * ball.speed));

To však funguje špatně. Třeba pro úhel 342 to jede jen doprava, protože to vyjde nula pro y. Jak to řešit lépe? Děkuji.

Nahlásit jako SPAM
IP: 78.45.140.–
sleepy0
Stálý člen
6. 6. 2013   #2
-
+1
-
Zajímavé

neukladat polohu ako int, ale ako nieco s pohyblivou destainnou ciarkou.

Nahlásit jako SPAM
IP: 158.195.204.–
Figa0
Super člen
6. 6. 2013   #3
-
0
-

No, ale já pak potřebuji kreslit přesně na pixel. Proto to mám přetypované na int. 

Nahlásit jako SPAM
IP: 78.45.140.–
KIIV
~ Moderátor
+43
God of flame
6. 6. 2013   #4
-
+1
-
Zajímavé

jenze sinus a cosinus ma hodnoty od -1 do 1...  kdyz odseknes desetiny, hadej co se stane... 

+ pokud si nekde nebudes drzet pozici v realnych cislech, tak se ti muze stat i to, ze prirustky budou moc male a misto pomaleho pohybu to bude zase stat, protoze se pojede treba x+0.1 = x...

Nahlásit jako SPAM
IP: 94.112.32.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Figa0
Super člen
6. 6. 2013   #5
-
0
-

No to já chápu proto se ptám jak se to řeší :) Jak z toho pak dostanu ten bod kam mám kreslit? Děkuju za reakce.

Nahlásit jako SPAM
IP: 78.45.140.–
KIIV
~ Moderátor
+43
God of flame
6. 6. 2013   #6
-
+1
-
Zajímavé

no resi se to tak, ze drzis pozice v double nebo float, pripocitavas primo ... a kdyz to chces vykreslit, tak ty pozice zaokrouhlis (tim tam zustavaji i sebemensi prirustky (v ramci presnosti promennych) a az to pretece, tak to skoci vedle)

(a pokud trvas na tom udrzovani intu, tak nejprve vynasob velkym cislem, pak teprve odsekavej)

Nahlásit jako SPAM
IP: 94.112.32.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Figa0
Super člen
8. 6. 2013   #7
-
0
-

Děkuji to bylo ono!

Nahlásit jako SPAM
IP: 78.45.140.–
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, 50 hostů

Podobná vlákna

Pohyb v python — založil Polarski

Pohyb v DBGrid — založil dyžon

Moderátoři diskuze

 

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