88 lines
3.5 KiB
Java
88 lines
3.5 KiB
Java
package laba1Loco;
|
|
|
|
import java.awt.*;
|
|
import java.util.*;
|
|
import javax.swing.*;
|
|
import javax.swing.Timer;
|
|
import java.awt.event.*;
|
|
|
|
public class WheelDrawingDavidStar implements IWheelDrawing{
|
|
private NumWheel numWheel;
|
|
|
|
public NumWheel getNumWheel() {
|
|
return numWheel;
|
|
}
|
|
|
|
public void setNumWheel(int kwheel){
|
|
switch(kwheel){
|
|
case 2:
|
|
numWheel = NumWheel.TwoWheel;
|
|
break;
|
|
case 3:
|
|
numWheel = NumWheel.ThreeWheel;
|
|
break;
|
|
case 4:
|
|
numWheel = NumWheel.FourWheel;
|
|
break;
|
|
default:
|
|
numWheel = NumWheel.TwoWheel;
|
|
System.out.println("ВСё плохо, колво колёс почему то не соответтвовало критериям, количество колёс:" + Integer.toString(kwheel) + "но вывели мы как будто их было 2");
|
|
break;
|
|
}
|
|
}
|
|
|
|
private void DrawWheel(int _startPosX, int _startPosY, Color color, Graphics2D g2d){
|
|
g2d.setColor(color);
|
|
g2d.fillOval(_startPosX, _startPosY, 8, 8);
|
|
|
|
g2d.setColor(Color.WHITE);
|
|
g2d.drawPolygon(new int[]{
|
|
_startPosX + 1, _startPosX + 7, _startPosX + 3
|
|
}, new int[]{
|
|
_startPosY + 2, _startPosY + 2, _startPosY + 7
|
|
}, 3);
|
|
g2d.drawPolygon(new int[]{
|
|
_startPosX + 1, _startPosX + 7, _startPosX + 4
|
|
}, new int[]{
|
|
_startPosY + 6, _startPosY + 6, _startPosY + 1
|
|
}, 3);
|
|
}
|
|
|
|
public void Draw(int _startPosX, int _startPosY, boolean fuelTank, Color color, Graphics2D g2d){
|
|
|
|
DrawWheel(_startPosX + 3, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 26, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 46, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 72, _startPosY + 34, color, g2d);
|
|
|
|
if (numWheel == NumWheel.TwoWheel){
|
|
DrawWheel(_startPosX + 14, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 59, _startPosY + 34, color, g2d);
|
|
}
|
|
if (numWheel == NumWheel.FourWheel){
|
|
DrawWheel(_startPosX + 11, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 18, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 55, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 63, _startPosY + 34, color, g2d);
|
|
}
|
|
|
|
if (fuelTank){
|
|
DrawWheel(_startPosX + 3+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 26+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 46+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 72+85, _startPosY + 34, color, g2d);
|
|
|
|
if (numWheel == NumWheel.TwoWheel){
|
|
DrawWheel(_startPosX + 14+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 59+85, _startPosY + 34, color, g2d);
|
|
}
|
|
if (numWheel == NumWheel.FourWheel){
|
|
DrawWheel(_startPosX + 11+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 18+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 55+85, _startPosY + 34, color, g2d);
|
|
DrawWheel(_startPosX + 63+85, _startPosY + 34, color, g2d);
|
|
}
|
|
}
|
|
}
|
|
}
|