Bouncing Balls Brug af vektorer til modellering af hastighed og retning.

Slides:



Advertisements
Lignende præsentationer
VEKTORER AM 2006.
Advertisements

Lavet i Visual Basic.NET. Opret en nyt projekt Vi oprettede et Windows Forms Application projekt.
Bevis for længdeformlen i rummet
Yachtskipper /2013 Navigation: Magnetisme Kurssætning
Jeg er flyttemand Branchearbejdsmiljørådet for transport og engros
Jeg kører bus Branchearbejdsmiljørådet for transport og engros
Game Maker 7. Sådan ser Game Maker ud når det startes op.
Herunder bevis for punkt-plan afstandsformlen
Yachtskipper /2010 Navigation: Magnetisme Kurssætning
Perspektivgeometri.
Funktioner Graf og forskrift Venstreklik på musen for at komme videre
Lineære funktioner AM/ Maj 2006
Side-egenskaber Web-udvikling med FrontPage 2003 RHS - Informationsteknologi.
Find cacher i et afgrænset område vha. polygon. Under fanebladet ”Tools” vælger du ”Polygon/Line drawing tool” Herefter bliver du ført til en hjemmeside.
KONCEPT Klasser og objekter En klasse beskriver et World ArrayList
CSS ver. 2 Rikke Møller-Poulsen. Visning af billeder?!? Er der stadig nogen, der har problemer med at få vist billeder på deres site?
1 Kap. 6, Geodætiske målemetoder, Tyngdefeltet. 1. Lodliniens retning: Astronomisk bredde og længde (tyngdevektorens retning). Astronomisk retning. 2.
 Det jeg har gjort er, at jeg har lavet en tast der starter det hele (mellemrum), derefter har jeg sat nogle lyde ind, og fået dem til at gentage sig.
VOOP, 8 april Refleksion i objekt orienterede programmeringssprog Mandag 8/ Kasper Østerbye.
Erhvervsskolen Nordsjælland Milnersvej Hillerød telefon Skæring mellem to linier i rummet.
Vejledende håndtering af Tessa under kapsejlads Rollefordeling - version december 2012.
Delphi og C++ Builder C++ Referencer og pointere.
Rollefordeling - version 1 - august 2012
Mekanisk Energi Potentiel Energi Kinetisk Energi
Stående bølger.
Interfaces – brug. Overblik Tidligere: –Interfaces Comparable gør det muligt at bruge Collections metoderne –min, max, sort, … –Algoritmemønstre Find.
Plan Mini Java style guide Bouncing balls Debugger dIntProg, E10.
Forelæsning 3.2 Billedredigering (bl.a. brug af for-løkker)
Oversigt Oplæg til projektuge Greenfoot gallery Program for næste uge
FEN IntroJava AAU1 Grafik – Crayon-objekter.
Forelæsning 2.2 Tilstand og opførsel (repetition)
KF04 GRAY Item 2, 12, 22, 32, 42, 52. Consider a builder when faced with many constructor parameters Item 2.
Cam Dancer Anvendelse af Billedeanalyse Teknikker.
DIntProg, E10 Begejstring På en skala fra 1 til 10, hvor begejstret er du for programmering?
Introduktion til programmering Repetition - ArrayList.
Checklister Comparable og Comparator. dIntProg, E08Checklister.2 Checkliste for Comparable Antagelse –vi har en liste med elementer af typen T: List lst;
Proteiner og massespektrometri
Jesper Mosegaard Multimedie Programmering E2003 MMProg uge46 Ancestor.
Billedbehandling – processering af digitale billeder.
Jeg kører truck Branchearbejdsmiljørådet for transport og engros
Jeg kører lastbil Branchearbejdsmiljørådet for transport og engros
Lineære funktioner og udviklingsforløb. Tillægsspørgsmål  Tillægsspørgsmål 1: En særlig linje er tangenten. Redegør for hvordan man bestemmer tangentligningen.
Kære Gud jeg takker dig 1, S1
Tekniske hjælpemidler Bekendtgørelse 1109
Sværhedsgraden af aftastningen
Forskellige traditioner
Geoiden Geoiden: Figuren viser 0-niveauet på jorden
402 – Guds kærlighed, hvis dybder her, 1, S1
Landinspektør Robert Jakobsen
Trinvis vejledning for anlæg af en belægning med fald
Areal bestemt ved integration
Grupperede observationssæt
Kære Vorherre Kære Vorherre, hvordan kan det være
Funktioner Graf og forskrift Husk, at diasshowet skal afspilles!
VEKTORER AM 2006.
Future Vejle inspiration
Future Vejle inspiration
Jeg kører lastbil Branchearbejdsmiljøudvalget for transport og engros
Future Vejle inspiration
Præsentationens transcript:

Bouncing Balls Brug af vektorer til modellering af hastighed og retning

Klasser - overblik BallWorld –Initialiserer verdenen til en passende størrelse Ball –En bold der flyver rundt i verdenen og ’bouncer’ mod kanterne (opg. 3) andre bolde (opg. 4 – extra credit) Vector –Repræsenterer boldens retning og hastighed –Hver gang act kaldes af Greenfoot: x bestemmer hvor langt bolden skal flytte sig vandret (på x-aksen) y bestemmer hvor langt bolden skal flytte sig lodret (på y-aksen) dIntProg, E10

Animering – hvordan flytter bolden sig? Greenfoot kalder Ball’s act() metode act() kalder move() metoden move() får fat i boldens koordinater ved at kalde getX() og getY() (fra Actor) move() får fat i vel’s koordinater vha. vel.getX() og vel.getY() (fra Vector) move() opdaterer boldens position ved at kalde setLocation (fra Actor) vel:Vector act() :Ball getX() getY() move()getX()getY()setLocation(…) dIntProg, E10

Bouncing på kanterne Efter kaldet til move skal kant-kollision håndteres –Dette indkapsles i en metode handleWallCollision To tilfælde –Hvis bolden rører ved top eller bundkanten skal vel sættes til vel.horizontalFlip() –Hvis bolden rører ved en sidekant skal vel sættes til vel.verticalFlip() dIntProg, E10

Kantcheck Hvordan checker man om bolden rører en kant? –Indkapsles i hitTopWall() hitBottomWall() hitLeftWall() hitRightWall() –Undgå at ’hardcode’ bredden og højden på verdenen Brug i stedet World metoderne getWidth() og getHeight() –Husk at tage højde for boldens størrelse Brug GreenfootImage-metoderne getWidth() og getHeight() dIntProg, E10

Kantcheck eksempel - hitRightWall() (getWorld().getWidth()-1, 0)(0,0) (0, getWorld().getHeight() - 1)(getWorld().getWidth() - 1, getWorld().getHeight() - 1) getX() + getImage().getWidth()/2 > getWorld().getWidth()-1 dIntProg, E10