ster tekenen

Status
Niet open voor verdere reacties.

romanosan

Gebruiker
Lid geworden
7 okt 2007
Berichten
88
i.p.v. een mooie ster heb ik gewoon een plusje met een vierkant(drawRect) eromheen.

Ik wil deze''ster'' tekenen in mijn Paneel. De attributen die ik mag gebruiken zijn aangegeven in een klassendiagram (zien code), maar als ik de tekenmethode aanroep krijg ik alleen het vierkantje te zien...

Hoe kan ik het met deze attributen voor elkaar krijgen?

Code:
import java.awt.Color;

public class Ster 
{
	private int xPositie, yPositie, grootte;

	public Ster(int xPositie, int yPositie, int grootte) //The constructor
	{
		this.xPositie = xPositie;
		this.yPositie = yPositie;
		this.grootte  = grootte;
	}
	
	public int getxPositie()
	{
		return (xPositie);
	}
	public int getyPositie()
	{
		return (yPositie);
	}
	public int getgrootte()
	{
		return (grootte);
	}
	
	public void setxPositie(int xPositie)
	{
		this.xPositie = xPositie;
	}
	public void setyPositie(int yPositie)
	{
		this.xPositie = yPositie;
	}
	public void setgrootte(int grootte)
	{
		this.grootte = grootte;
	}
	
	public void teken(java.awt.Graphics g) 
	{		
		g.setColor(Color.BLUE);
		g.drawRect (xPositie,yPositie,grootte, grootte);
		g.drawLine (50, 150, 150, 150);
		g.drawLine (100, 100,100, 200);
	}
}
 
Wees eens creatief met het teken mbv drawLine. Deze functie verwacht 2 coordinaten.

1 coordinaat is natuurlijk (xPositie, yPositie) maar je kan natuurlijk (XPostion + grootte, Yposition) of (XPositie + (grootte / 2), YPositie + (grootte 2)).. neme,
en nog vele andere mogelijkheden..

Dus pak pen en papier en teken een vierkant en teken daarin je ster en schrijf alle cooridinaten op zoals hierboven.

succes..
 
Wees eens creatief met het teken mbv drawLine. Deze functie verwacht 2 coordinaten.

1 coordinaat is natuurlijk (xPositie, yPositie) maar je kan natuurlijk (XPostion + grootte, Yposition) of (XPositie + (grootte / 2), YPositie + (grootte 2)).. neme,
en nog vele andere mogelijkheden..

Dus pak pen en papier en teken een vierkant en teken daarin je ster en schrijf alle cooridinaten op zoals hierboven.

succes..

Bedankt tot zover, dit heb ik ervan gemaakt. Is dit ook goed?

Code:
	[COLOR="Navy"]public void teken(java.awt.Graphics g) 
	{		
		  g.setColor(Color.BLUE);
		  g.drawRect (xPositie,yPositie,grootte, grootte-95); //50,100,100
		  g.drawRect (xPositie+55,yPositie-55,grootte-95, grootte); //50,100,100
        }[/COLOR]
Nu wil ik met een knopHandler ervoor zorgen dat iedere keer bij het klikken deze 2 drawRects, evenredig groot worden..

Ik ga het zelf even proberen.. en dan laat ik het weten, als het gelukt is.
 
Laatst bewerkt:
Zo heb ik het opgelost:

Zo heb ik het opgelost:

Dataklasse Ster:
Code:
[COLOR="Blue"]public void vergroot()
	{
		grootte += 4;
	}
	public void verklein()
	{
		grootte -=4;
	}
	public void reset()
	{
		grootte = 100;
	}[/COLOR]

Paneel:
Code:
[COLOR="Blue"]class vergrootHandler implements ActionListener 
	{
		public void actionPerformed(ActionEvent e) 
		{
			mijnSter.vergroot();
			mijnSter2.vergroot();
			mijnSter3.vergroot();
			mijnSter4.vergroot();
			repaint();
		}
	}[/COLOR]

Vriendelijk dank voor de tip.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan