GraphicsApp API
Eine überarbeitete und angepasste Variante der originalen GraphicsApp-Umgebung
Circle.java
gehe zur Dokumentation dieser Datei
1package de.ur.mi.oop.graphics;
2
3import de.ur.mi.oop.colors.Color;
4
5/**
6 * Die Circle-Klasse ist ein grafisches Objekt, das einen Kreis darstellt.
7 */
8public class Circle extends GraphicsObject {
9
10 private float radius;
11
12 /**
13 * Konstruiert einen neuen Kreis mit dem angegebenen Radius, deren
14 * Mittelpunkt an den Koordinaten x und y positioniert ist.
15 *
16 * @param x Die x-Position der Ellipse in Pixel
17 * @param y Die y-Position der Ellipse in Pixel
18 * @param radius Der Radius des Kreises in Pixel
19 * @param color Die Füllfarbe für den Kreis
20 */
21 public Circle(float x, float y, float radius, Color color) {
22 super(x, y, color);
23 this.radius = radius;
25 }
26
27 /**
28 * Konstruiert einen neuen Kreis mit dem angegebenen Radius, deren
29 * Mittelpunkt an den Koordinaten x und y positioniert ist.
30 *
31 * @param x Die x-Position der Ellipse in Pixel
32 * @param y y
33 * Die y-Position der Ellipse in Pixel
34 * @param radius Der Radius des Kreises in Pixel
35 */
36 public Circle(float x, float y, float radius) {
37 super(x, y);
38 this.radius = radius;
40 }
41
42 /**
43 * Konstruiert einen neuen Kreis mit dem angegebenen Radius, deren
44 * Mittelpunkt an den Koordinaten positioniert ist, die durch einen Point gegeben sind.
45 *
46 * @param position Koordinaten des Mittelpunkts
47 * @param radius Der Radius des Kreises in Pixel
48 */
49 public Circle(Point position, float radius) {
50 this(position.getXPos(), position.getYPos(), radius);
51 }
52
53 /**
54 * Konstruiert einen neuen Kreis mit dem angegebenen Radius, deren
55 * Mittelpunkt an den Koordinaten positioniert ist, die durch einen Point gegeben sind.
56 *
57 * @param position Koordinaten des Mittelpunkts
58 * @param radius Der Radius des Kreises in Pixel
59 * @param color Die Füllfarbe für den Kreis
60 */
61 public Circle(Point position, float radius, Color color) {
62 this(position.getXPos(), position.getYPos(), radius, color);
63 }
64
65 public void setRadius(float radius) {
66 this.radius = radius;
67 }
68
69 public float getRadius() {
70 return radius;
71 }
72
73 public float getWidth() {
74 return this.radius * 2.f;
75 }
76
77 public float getHeight() {
78 return this.radius * 2.f;
79 }
80
81 public void setWidth(float width) {
82 setRadius(0.5f * width);
83 }
84
85 public void setHeight(float height) {
86 setRadius(0.5f * height);
87 }
88
89 public float getRightBorder() {
90 return this.radius + getXPos();
91 }
92
93 public float getLeftBorder() {
94 return getXPos() - this.radius;
95 }
96
97 public float getTopBorder() {
98 return getYPos() - this.radius;
99 }
100
101 public float getBottomBorder() {
102 return getYPos() + this.radius;
103 }
104}
void setRadius(float radius)
Definition: Circle.java:65
Circle(float x, float y, float radius)
Definition: Circle.java:36
Circle(float x, float y, float radius, Color color)
Definition: Circle.java:21
void setWidth(float width)
Definition: Circle.java:81
Circle(Point position, float radius)
Definition: Circle.java:49
void setHeight(float height)
Definition: Circle.java:85
Circle(Point position, float radius, Color color)
Definition: Circle.java:61