73 lines
4.0 KiB
Java
73 lines
4.0 KiB
Java
import java.awt.*;
|
|
public class DrawningWheels {
|
|
private WheelNumber wheelNumber;
|
|
public void setWheelNumber(int number) {
|
|
switch (number) {
|
|
case 1:
|
|
wheelNumber = WheelNumber.Four;
|
|
break;
|
|
case 2:
|
|
wheelNumber = WheelNumber.Five;
|
|
break;
|
|
case 3:
|
|
wheelNumber = WheelNumber.Six;
|
|
break;
|
|
default: wheelNumber = WheelNumber.Four;
|
|
}
|
|
}
|
|
public void drawWheels(Graphics2D g2D, Color color, int _startPosX, int _startPosY) {
|
|
switch (wheelNumber) {
|
|
case Four:
|
|
drawFourWheels(g2D, color, _startPosX, _startPosY);
|
|
break;
|
|
case Five:
|
|
drawFiveWheels(g2D, color, _startPosX, _startPosY);
|
|
break;
|
|
case Six:
|
|
drawSixWheels(g2D, color, _startPosX, _startPosY);
|
|
break;
|
|
}
|
|
}
|
|
private void drawFourWheels(Graphics2D g2D, Color color, int _startPosX, int _startPosY) {
|
|
g2D.setColor(color);
|
|
int wheelRadius = 10;
|
|
g2D.drawOval(_startPosX + 30, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 30, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 56, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 56, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 84, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 84, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 110, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 110, _startPosY + 60, wheelRadius * 2, wheelRadius * 2);
|
|
}
|
|
private void drawFiveWheels(Graphics2D g2D, Color color, int _startPosX, int _startPosY) {
|
|
g2D.setColor(color);
|
|
int wheelRadius = 10;
|
|
g2D.drawOval(_startPosX + 34, _startPosY + 55, wheelRadius, wheelRadius);
|
|
g2D.fillOval(_startPosX + 34, _startPosY + 55, wheelRadius, wheelRadius);
|
|
g2D.drawOval(_startPosX + 45, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 45, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 69, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 69, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 94, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 94, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 115, _startPosY + 55, wheelRadius, wheelRadius);
|
|
g2D.fillOval(_startPosX + 115, _startPosY + 55, wheelRadius, wheelRadius);
|
|
}
|
|
private void drawSixWheels(Graphics2D g2D, Color color, int _startPosX, int _startPosY) {
|
|
g2D.setColor(color);
|
|
int wheelRadius = 10;
|
|
g2D.drawOval(_startPosX + 34, _startPosY + 54, wheelRadius, wheelRadius);
|
|
g2D.fillOval(_startPosX + 34, _startPosY + 54, wheelRadius, wheelRadius);
|
|
g2D.drawOval(_startPosX + 35, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 35, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 58, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 58, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 82, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 82, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 105, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.fillOval(_startPosX + 105, _startPosY + 65, wheelRadius * 2, wheelRadius * 2);
|
|
g2D.drawOval(_startPosX + 115, _startPosY + 54, wheelRadius, wheelRadius);
|
|
g2D.fillOval(_startPosX + 115, _startPosY + 54, wheelRadius, wheelRadius);
|
|
}
|
|
} |