Package eu.pedu.lib20s.canvasmanager
Class Line
java.lang.Object
eu.pedu.lib20s.geom.ANamed
eu.pedu.lib20s.geom.AMovable
eu.pedu.lib20s.canvasmanager.Line
- All Implemented Interfaces:
IAdaptable
,ICMPaintable
,IMovable
,IColorable
,ICopyable
public class Line extends AMovable implements ICopyable, IAdaptable, IColorable, ICMPaintable
Instance třídy
Line
představují jednoduché čáry
zobrazitelné na plátně spravovaném správcem plátna.
Čára je určena svými krajními body, přičemž souřadnice počátečního bodu
je současně považována za pozici celé instance.-
Field Summary
Fields Modifier and Type Field Description static NamedColor
DEFAULT_COLOR
Počáteční barva nakreslené instance v případě, kdy uživatel žádnou požadovanou barvu nezadá - pro čáruNamedColor.BLACK
.protected int
xEnd
Bodová x-ová souřadnice konce.protected int
yEnd
Bodová y-ová souřadnice konce. -
Constructor Summary
Constructors Constructor Description Line()
Připraví novou instanci s implicitním umístěním, rozměry a barvou.Line(int x, int y, int xEnd, int yEnd)
Připraví novou instanci se zadanou pozicí a rozměry a implicitní barvou.Line(int x, int y, int xEnd, int yEnd, NamedColor color)
Připraví novou instanci se zadanou pozicí, rozměry a barvou.Line(Position start, Position end)
Připraví instanci se zadanou pozicí a velikostí a implicitní barvou.Line(Position start, Position end, NamedColor color)
Připraví instanci se zadanou pozicí, velikostí a barvou. -
Method Summary
Modifier and Type Method Description void
connect(int xStart, int yStart, int xEnd, int yEnd)
Přesune instanci tak, aby spojila zadané body.Line
copy()
Vrátí kopii daného tvaru, tj. stejný tvar, stejně velký, stejně umístěný a se stejnou barvou.java.lang.String
forToString()
Vrací charakteristiky dané instance do jejího podpisu.NamedColor
getColor()
Vrátí aktuální barvu instance.Position
getEndPosition()
Vrátí pozici koncového bodu instance.int
getEndX()
Vrátí x-ovou souřadnici koncového bodu instance.int
getEndY()
Vrátí y-ovou souřadnici koncového bodu instance.void
paint(Painter painter)
Prostřednictvím zadaného kreslítka vykreslí obraz instance na plátno.void
setColor(NamedColor color)
Nastaví novou barvu instance.void
setEndPosition(int xEnd, int yEnd)
Nastaví pozici koncového bodu instance.void
setEndPosition(Position endPosition)
Nastaví pozici koncového bodu instance.void
setPosition(int x, int y)
Přemístí instanci na zadanou pozici.void
stepChanged(int oldStep, int newStep)
Změní pozici a rozměr instance v závislosti na zadané změně kroku plátna.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface eu.pedu.lib20s.geom.IMovable
getPosition, moveDown, moveRight, setPosition, setX, setY
-
Field Details
-
DEFAULT_COLOR
Počáteční barva nakreslené instance v případě, kdy uživatel žádnou požadovanou barvu nezadá - pro čáruNamedColor.BLACK
. -
xEnd
protected int xEndBodová x-ová souřadnice konce. -
yEnd
protected int yEndBodová y-ová souřadnice konce.
-
-
Constructor Details
-
Line
public Line()Připraví novou instanci s implicitním umístěním, rozměry a barvou. Instance bude umístěna v levém horním rohu plátna a bude mít implicitní barvu, Končit bude ve středu plátna. -
Line
public Line(int x, int y, int xEnd, int yEnd)Připraví novou instanci se zadanou pozicí a rozměry a implicitní barvou.- Parameters:
x
- Vodorovná (x-ová) souřadnice instance (jejího počátku), x=0 má levý okraj plátna, souřadnice roste dopravay
- Svislá (y-ová) souřadnice instance (jejího počátku), y=0 má horní okraj plátna, souřadnice roste dolůxEnd
- x-ová souřadnice koncového bodu instanceyEnd
- y-ová souřadnice koncového bodu instance
-
Line
Připraví instanci se zadanou pozicí a velikostí a implicitní barvou. Pozice instance je definována pozicí jejího počátečního bodu.- Parameters:
start
- Pozice počátečního boduend
- Pozice koncového bodu
-
Line
Připraví instanci se zadanou pozicí, velikostí a barvou. Pozice instance je definována pozicí jejího počátečního bodu.- Parameters:
start
- Pozice počátečního boduend
- Pozice koncového boducolor
- Barva instance
-
Line
Připraví novou instanci se zadanou pozicí, rozměry a barvou.- Parameters:
x
- Vodorovná (x-ová) souřadnice instance (jejího počátku), x=0 má levý okraj plátna, souřadnice roste dopravay
- Svislá (y-ová) souřadnice instance (jejího počátku), y=0 má horní okraj plátna, souřadnice roste dolůxEnd
- x-ová souřadnice koncového bodu instanceyEnd
- y-ová souřadnice koncového bodu instancecolor
- Barva vytvářené instance
-
-
Method Details
-
getColor
Vrátí aktuální barvu instance.- Specified by:
getColor
in interfaceIColorable
- Returns:
- Aktuální barva instance
-
setColor
Nastaví novou barvu instance.- Specified by:
setColor
in interfaceIColorable
- Parameters:
color
- Požadovaná nová barva
-
setPosition
public void setPosition(int x, int y)Přemístí instanci na zadanou pozici. Pozice instance je přitom definována jako pozice levého horního rohu opsaného obdélníku.- Specified by:
setPosition
in interfaceIMovable
- Overrides:
setPosition
in classAMovable
- Parameters:
x
- Nově nastavovaná vodorovná (x-ová) souřadnice instance, x=0 má levý okraj plátna, souřadnice roste dopravay
- Nově nastavovaná svislá (y-ová) souřadnice instance, y=0 má horní okraj plátna, souřadnice roste dolů
-
getEndX
public int getEndX()Vrátí x-ovou souřadnici koncového bodu instance.- Returns:
- Aktuální vodorovná (x-ová) souřadnice koncového bodu instance, x=0 má levý okraj plátna, souřadnice roste doprava
-
getEndY
public int getEndY()Vrátí y-ovou souřadnici koncového bodu instance.- Returns:
- Aktuální svislá (y-ová) souřadnice koncového bodu instance, y=0 má horní okraj plátna, souřadnice roste dolů
-
getEndPosition
Vrátí pozici koncového bodu instance.- Returns:
- Instance třídy
Position
s aktuální pozicí koncového bodu
-
setEndPosition
Nastaví pozici koncového bodu instance.- Parameters:
endPosition
- Pozice koncového bodu.
-
setEndPosition
public void setEndPosition(int xEnd, int yEnd)Nastaví pozici koncového bodu instance.- Parameters:
xEnd
- Vodorovná souřadnice koncového bodu.yEnd
- Svislá souřadnice koncového bodu.
-
connect
public void connect(int xStart, int yStart, int xEnd, int yEnd)Přesune instanci tak, aby spojila zadané body.- Parameters:
xStart
- Vodorovná (x-ová) souřadnice instance počátkuyStart
- Svislá (y-ová) souřadnice instance počátkuxEnd
- x-ová souřadnice koncového boduyEnd
- y-ová souřadnice koncového bodu
-
copy
Vrátí kopii daného tvaru, tj. stejný tvar, stejně velký, stejně umístěný a se stejnou barvou. -
forToString
public java.lang.String forToString()Vrací charakteristiky dané instance do jejího podpisu.- Overrides:
forToString
in classAMovable
- Returns:
- String s charakteristikami dané instance
-
paint
Prostřednictvím zadaného kreslítka vykreslí obraz instance na plátno.- Specified by:
paint
in interfaceICMPaintable
- Parameters:
painter
- Kreslítko schopné nakreslit instanci
-
stepChanged
public void stepChanged(int oldStep, int newStep)Změní pozici a rozměr instance v závislosti na zadané změně kroku plátna.- Specified by:
stepChanged
in interfaceIAdaptable
- Parameters:
oldStep
- Původní velikost kroku.newStep
- Nově nastavená velikost kroku.
-