Basis-functionaliteit van Greenfoot
Open op de site van Greenfoot het tabblad Documentation. Klik dan op de link die te vinden is in de kader met titel Reference. Dan kom je uit bij de Greenfoot Class Documentation, zoals hieronder te zien is.
Deze documentatie beschrijft de Greenfoot-klassen, o.a. World en Actor.
Zoek in het menu bovenaan onder Help.
Vanaf hoofdstuk 3 zullen we ook klassen gebruiken die niet typisch voor Greenfoot zijn, maar die gemeengoed zijn in de programmeertaal Java. Om deze documentatie te vinden kan je de zoektermen java api 8 gebruiken, of deze link naar de Application Programming Interface van Java volgen.
Open het scenario FatCat.
- Welke twee Greenfootklassen zie je in het klassendiagram ?
Elk scenario vertrekt van de Greenfootklassen World en Actor, deze bevatten de basis-functionaliteit van een Greenfoot scenario. In elk scenario worden eigen klassen toegevoegd, als "subklasse" van deze basisklassen (de pijl toont de relatie "is subklasse van"). Deze subklassen zijn anders in elk scenario.
Wat zijn de specifieke klassen voor dit scenario?
Wat is de relatie tussen deze klassen ?
Oplossing
- Open het klasse-menu van de Greenfootklassen World en Actor, en bekijk de documentatie. Wat wordt hier beschreven ?
Open het klasse-menu van de klasse Cat en bekijk de broncode in de Editor. Volgend labo zal je hier nieuwe code moeten toevoegen. Belangrijk is dat je deze klassen kan aanpassen. Sluit de editor.
Het klasse-menu open je met een klik op de rechtermuisknop (snelmenu) op de klasse.
Oplossing
- Elk scenario wordt automatisch gecompileerd. Daarbij initialiseert Greenfoot een "instantie" van de concrete wereld. Open het object-menu van de concrete CatWorld en merk op dat er elf instantievariabelen zijn. Bekijk de instantievariabelen die een geheel getal bevatten en vul volgende zin aan. De instantie van CatWorld is ......... cellen breed en .......... cellen hoog. Dit is dus een wereld met hoge/lage resolutie (duid je keuze aan).
- Het linkerdeel van het venster toont de concrete CatWorld. Klik met de rechtermuisknop op de concrete wereld voor het object-menu. Met Inspect kan je de instantievariabelen bekijken.
- De wereld is opgebouwd uit vierkante "cellen" van een bepaalde grootte (dit kan je in dit scenario niet echt zien). Een wereldobject onthoudt de "cellsize". Dit is de grootte van elke cel. De "cellsize" is ook de minimale afstand (in pixels) waarover je een actor kan verplaatsen.
Een wereld met 'hoge' resolutie heeft cellsize gelijk aan 1, indien de cellsize groter is dan 1 heeft de wereld een 'lage' resolutie.
Een wereldobject onthoudt ook zijn afmetingen, uitgedrukt in "aantal cellen".
Oplossing
Onthoud: Het klasse-menu vind je op de klassen (in het smalle venster rechts). Het object-menu vind je op de objecten (in het grote venster links).