Package paintingcanvas.drawable
Interface Outlineable<T extends Drawable<T>>
-
- Type Parameters:
T- the type of the object
- All Superinterfaces:
Animatable,Drawable<T>
- All Known Implementing Classes:
Circle,DrawableBase.InteractableShape,DrawableBase.OutlineableDrawableBase,DrawableBase.Shape,Ellipse,Image,Path,Polygon,Rectangle,Square,Triangle
public interface Outlineable<T extends Drawable<T>> extends Drawable<T>
Elements that can be outlined.
If stroke is null, the outline should be removed.
Also provides fill methods because yes
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.awt.ColorgetOutlineColor()Gets the outline colorjava.awt.StrokegetOutlineStroke()Gets the outline strokevoidinternalSetFilled(boolean filled)voidinternalSetOutlineColor(java.awt.Color color)voidinternalSetOutlineStroke(java.awt.Stroke stroke)default TremoveOutline()Removes the outline from the shapedefault TsetFilled(boolean filled)Set whether this object is filled or notdefault TsetOutline(int thickness)Sets the parameters for the outline of the shape, with the color defaulting to blackdefault TsetOutline(int thickness, java.awt.Color color)Sets the parameters for the outline of the shapedefault TsetOutline(java.awt.Color color)Sets the outline color of the shape-
Methods inherited from interface paintingcanvas.animation.Animatable
Modifier and Type Method Description default AnimationBuildercolorTo(int hex, double duration)Change the color ofthisto the specifiedcoloroverdurationseconds.default AnimationBuildercolorTo(int r, int g, int b, double duration)Change the color ofthisto the specifiedcoloroverdurationseconds.default AnimationBuildercolorTo(int r, int g, int b, int a, double duration)Change the color ofthisto the specifiedcoloroverdurationseconds.default AnimationBuildercolorTo(java.awt.Color color, double duration)Change the color ofthisto the specifiedcoloroverdurationseconds.default AnimationBuildercolorTo(java.lang.String name, double duration)Change the color ofthisto the specifiedcoloroverdurationseconds.default AnimationBuildercolorTo(Hue hue, double duration)Change the color ofthisto the specifiedcoloroverdurationseconds.Drawable<?>drawable()Get theDrawableelement from thisAnimatable.default AnimationBuilderfadeIn(double duration)Fadethisin overdurationseconds.default AnimationBuilderfadeOut(double duration)Fadethisout overdurationseconds.default AnimationBuildermoveBy(int x, int y, double duration)Movethisby the specifiedxandyoverdurationseconds.default AnimationBuildermoveHorizontalBy(int x, double duration)Movethisby the specifiedxhorizontally overdurationseconds.default AnimationBuildermoveTo(int x, int y, double duration)Movethisto the specifiedxandyoverdurationsecondsdefault AnimationBuildermoveVerticalBy(int y, double duration)Movethisby the specifiedyvertically overdurationseconds.default AnimationBuilderrotateBy(int angle, double duration)Rotatethisbyangledegrees overdurationseconds.default AnimationBuilderrotateTo(int angle, double duration)Rotatethisto the specifiedangledegrees overdurationseconds.
-
Methods inherited from interface paintingcanvas.drawable.Drawable
Modifier and Type Method Description default AnimationBuilderanimate()Start animating this object.default TbringToFront()Brings the object in front of all other objects.java.awt.Pointcenter(java.awt.Graphics2D g)Get the object's centerpointdefault Drawable<?>drawable()Get theDrawableelement from thisAnimatable.default voiderase()Erase this object from the canvas.intgetLayer()Gets the current layer of the object.TgetThis()Thide()Hide the Object.voidinternalSetLayer(int layer)voidrender(java.awt.Graphics2D g)Actually render the object itselfdefault TsendToBack()Puts the object behind all other objects.default TsetLayer(int layer)Puts the object on a specific layer.Tshow()Show the Object
-
-
-
-
Method Detail
-
internalSetOutlineStroke
void internalSetOutlineStroke(java.awt.Stroke stroke)
-
internalSetOutlineColor
void internalSetOutlineColor(java.awt.Color color)
-
internalSetFilled
void internalSetFilled(boolean filled)
-
getOutlineColor
java.awt.Color getOutlineColor()
Gets the outline color- Returns:
- the outline color
-
getOutlineStroke
java.awt.Stroke getOutlineStroke()
Gets the outline stroke- Returns:
- the outline stroke
-
setOutline
default T setOutline(int thickness, java.awt.Color color)
Sets the parameters for the outline of the shape// the circle is red outlined by a black outline Circle c = new Circle(100, 100, 50); c.setOutline(5); c.setColor(Color.RED); // now just the outline is rendered c.setFilled(false);- Parameters:
color- the color of the outlinethickness- the thickness of the outline- Returns:
- the original object to allow method chaining
-
setOutline
default T setOutline(java.awt.Color color)
Sets the outline color of the shape// the circle is red outlined by a black outline Circle c = new Circle(100, 100, 50); c.setOutline(5); c.setColor(Color.RED); // now the outline is blue c.setOutline(Color.BLUE);- Parameters:
color- the color of the outline- Returns:
- the original object to allow method chaining
-
setOutline
default T setOutline(int thickness)
Sets the parameters for the outline of the shape, with the color defaulting to black// the circle is red outlined by a green outline Circle c = new Circle(100, 100, 50); c.setOutline(5, Color.GREEN); c.setColor(Color.RED); // now just the outline is rendered c.setFilled(false);- Parameters:
thickness- the thickness of the outline- Returns:
- the original object to allow method chaining
-
removeOutline
default T removeOutline()
Removes the outline from the shape- Returns:
- the original object to allow method chaining
-
setFilled
default T setFilled(boolean filled)
Set whether this object is filled or not// draw just an outline: Circle c = new Circle(100, 100, 50, Color.RED); c.setOutline(5); c.setFilled(false);- Parameters:
filled- the value to setthis.filledto- Returns:
- the original object to allow method chaining
- See Also:
setOutline(int)
-
-