package Trolleybus; import java.awt.*; public class DrawingTriangleDoors implements IDrawingDoors{ private CntOfDoors _cntOfDoors; public void SetCntOfDoors(int cnt) { if (cnt <= 3) { _cntOfDoors = CntOfDoors.Three; } if (cnt == 4) { _cntOfDoors = CntOfDoors.Four; } if (cnt >= 5) { _cntOfDoors = CntOfDoors.Five; } } public void DrawDoors(Graphics2D g, Color BodyColor, int _startPosX, int _startPosY) { switch (_cntOfDoors) { case Three: g.setColor(BodyColor); //Первая дверь g.drawLine(_startPosX + 2, _startPosY + 80, _startPosX + 10, _startPosY + 50); g.drawLine(_startPosX + 10, _startPosY + 50, _startPosX + 18, _startPosY + 80); //Вторая дверь g.drawLine(_startPosX + 67, _startPosY + 80, _startPosX + 75, _startPosY + 50); g.drawLine(_startPosX + 75, _startPosY + 50, _startPosX + 83, _startPosY + 80); //Третья дверь g.drawLine(_startPosX + 132, _startPosY + 80, _startPosX + 140, _startPosY + 50); g.drawLine(_startPosX + 140, _startPosY + 50, _startPosX + 148, _startPosY + 80); g.setColor(Color.CYAN); g.drawOval(_startPosX + 22, _startPosY + 35, 16, 24); g.drawOval(_startPosX + 47, _startPosY + 35, 16, 24); g.drawOval(_startPosX + 87, _startPosY + 35, 16, 24); g.drawOval(_startPosX + 112, _startPosY + 35, 16, 24); break; case Four: g.setColor(BodyColor); //Первая дверь g.drawLine(_startPosX + 2, _startPosY + 80, _startPosX + 10, _startPosY + 50); g.drawLine(_startPosX + 10, _startPosY + 50, _startPosX + 18, _startPosY + 80); //Вторая дверь g.drawLine(_startPosX + 48, _startPosY + 80, _startPosX + 56, _startPosY + 50); g.drawLine(_startPosX + 56, _startPosY + 50, _startPosX + 64, _startPosY + 80); //Третья дверь g.drawLine(_startPosX + 86, _startPosY + 80, _startPosX + 94, _startPosY + 50); g.drawLine(_startPosX + 94, _startPosY + 50, _startPosX + 102, _startPosY + 80); //Четвёртая дверь g.drawLine(_startPosX + 132, _startPosY + 80, _startPosX + 140, _startPosY + 50); g.drawLine(_startPosX + 140, _startPosY + 50, _startPosX + 148, _startPosY + 80); g.setColor(Color.CYAN); g.drawOval(_startPosX + 25, _startPosY + 35, 16, 24); g.drawOval(_startPosX + 67, _startPosY + 35, 16, 24); g.drawOval(_startPosX + 109, _startPosY + 35, 16, 24); break; case Five: g.setColor(BodyColor); //Первая дверь g.drawLine(_startPosX + 2, _startPosY + 80, _startPosX + 10, _startPosY + 50); g.drawLine(_startPosX + 10, _startPosY + 50, _startPosX + 18, _startPosY + 80); //Вторая дверь g.drawLine(_startPosX + 48, _startPosY + 80, _startPosX + 56, _startPosY + 50); g.drawLine(_startPosX + 56, _startPosY + 50, _startPosX + 64, _startPosY + 80); //Третья дверь g.drawLine(_startPosX + 67, _startPosY + 80, _startPosX + 75, _startPosY + 50); g.drawLine(_startPosX + 75, _startPosY + 50, _startPosX + 83, _startPosY + 80); //Четвёртая дверь g.drawLine(_startPosX + 86, _startPosY + 80, _startPosX + 94, _startPosY + 50); g.drawLine(_startPosX + 94, _startPosY + 50, _startPosX + 102, _startPosY + 80); //Пятая дверь g.drawLine(_startPosX + 132, _startPosY + 80, _startPosX + 140, _startPosY + 50); g.drawLine(_startPosX + 140, _startPosY + 50, _startPosX + 148, _startPosY + 80); g.setColor(Color.CYAN); g.drawOval(_startPosX + 25, _startPosY + 35, 16, 24); g.drawOval(_startPosX + 109, _startPosY + 35, 16, 24); break; } } }