WebProg-2014/Gyakorlat6

A MathWikiből
(Változatok közti eltérés)
 
(egy szerkesztő 8 közbeeső változata nincs mutatva)
27. sor: 27. sor:
 
=== Tégla rajzolás ===
 
=== Tégla rajzolás ===
  
Módosítsuk úgy az alábbi kódot, hogy a kb a következõ ábrát kapjuk: [http://math.bme.hu/~kkovacs/webprog2015/teglak.jpg]
+
Módosítsuk úgy az alábbi kódot, hogy a kb a következõ ábrát kapjuk: [http://math.bme.hu/~kkovacs/webprog2015/teglak.jpg teglak]
  
 
<java>
 
<java>
61. sor: 61. sor:
  
 
// Itt történik a rajzolás
 
// Itt történik a rajzolás
 +
@Override
 
public void paint(Graphics g) {
 
public void paint(Graphics g) {
 
// Csak, hogy a 2D rajzolást használjuk
 
// Csak, hogy a 2D rajzolást használjuk
Graphics2D g2d = (Graphics2D) g;
+
Graphics2D g2d = (Graphics2D) g.create();
  
 
g2d.setColor(Color.black); // Szín beállítása
 
g2d.setColor(Color.black); // Szín beállítása
69. sor: 70. sor:
 
g2d.setColor(Color.blue);
 
g2d.setColor(Color.blue);
 
g2d.fillRect(50, 50, 50, 70); // Kitöltés
 
g2d.fillRect(50, 50, 50, 70); // Kitöltés
 +
 +
// Ezáltal a transzformációk visszaállnak a következõ rajzolásnál
 +
g2d.dispose();
 
}
 
}
 
}
 
}
 
</java>
 
</java>
  
=== ArrayList ===
+
=== Kör(szelet) ===
 +
 
 +
Használva a '''Graphics2D''' '''fillArc''' és '''fillOval''' metódusait rajzoljatok körszeletet és kört.
 +
 
 +
=== Háromszög ===
 +
 
 +
Rajzoljatok egy háromszöget az elõadáson tanult '''GeneralPath''' osztályt használva. Írjátok a háromszögbe a 3-as számot a '''Graphics2D''' '''drawString''' metódusával.
  
=== HashMap ===
+
=== Ház ===
  
== További feladatok ==
+
Használjátok bármilyen rajzolási módot, hogy rajzoljatok egy minimalista (óvodás rajzolta) házat.

A lap jelenlegi, 2015. április 1., 10:06-kori változata

Tartalomjegyzék

Ismétlés

Prímek adott számig

Egészítsétek ki a primes függvényt, ami egy List objektumban visszaadja a prímek listáját 0-tól a paraméterként kapott számig. Tehát, ha 10-et adunk át a függvénynek, akkor adja vissza a [2, 3, 5, 7] listát.

import java.util.ArrayList;
import java.util.List;
 
public class Prime {
 
	public static List<Integer> primes(int upperBound) {
		// TODO
	}
 
	public static void main(String[] args) {
		System.out.println(primes(100));
	}
}

Bemelegítõ feladatok

Ezekhez a feladatokhoz nagyon hasznos az elõadás ismerete: 6. elõadás

Tégla rajzolás

Módosítsuk úgy az alábbi kódot, hogy a kb a következõ ábrát kapjuk: teglak

import java.awt.Color;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
 
public class Teglak extends Frame {
 
	public static void main(String args[]) {
		new Teglak();
	}
 
	public Teglak() {
		super("Teglak");		// Az ablak neve
 
		setSize(400, 200);		// Ablakméret beállítása
 
		setVisible(true);		// Enélkül nem látszana semmi
 
		// Ezzel most ne foglalkozzatok, arra felel, hogy
		// ha bezáródik az ablak, akkor minden felszabaduljon.
		addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				dispose();
				System.exit(0);
			}
		});
	}
 
	// Itt történik a rajzolás
	@Override
	public void paint(Graphics g) {
		// Csak, hogy a 2D rajzolást használjuk
		Graphics2D g2d = (Graphics2D) g.create();
 
		g2d.setColor(Color.black);		// Szín beállítása
		g2d.drawRect(50, 50, 50, 70);	// Keret rajzolása
		g2d.setColor(Color.blue);
		g2d.fillRect(50, 50, 50, 70);	// Kitöltés
 
		// Ezáltal a transzformációk visszaállnak a következõ rajzolásnál
		g2d.dispose();
	}
}

Kör(szelet)

Használva a Graphics2D fillArc és fillOval metódusait rajzoljatok körszeletet és kört.

Háromszög

Rajzoljatok egy háromszöget az elõadáson tanult GeneralPath osztályt használva. Írjátok a háromszögbe a 3-as számot a Graphics2D drawString metódusával.

Ház

Használjátok bármilyen rajzolási módot, hogy rajzoljatok egy minimalista (óvodás rajzolta) házat.

Személyes eszközök