From c1a4102d9d5666714de38ab373702ebf1fac2784 Mon Sep 17 00:00:00 2001 From: spacyboy Date: Tue, 19 Dec 2023 22:51:32 +0400 Subject: [PATCH] =?UTF-8?q?=D0=93=D0=BE=D1=82=D0=BE=D0=B2=D0=B0=D1=8F=20?= =?UTF-8?q?=D0=A3=D1=81=D0=BB=D0=BE=D0=B6=D0=BD=D0=B5=D0=BD=D0=BD=D0=B0?= =?UTF-8?q?=D1=8F=20=D0=9B=D0=B0=D0=B1=D0=B0=201?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/misc.xml | 2 +- DrawingRoadTrain.java | 19 ++++++++----------- EntityRoadTrain.java | 6 +++--- FormRoadTrain.java | 2 +- NumWheel.java | 6 ++++++ NumWindow.java | 6 ------ WheelDrawing.java | 42 ++++++++++++++++++++++++++++++++++++++++++ WindowDrawing.java | 39 --------------------------------------- 8 files changed, 61 insertions(+), 61 deletions(-) create mode 100644 NumWheel.java delete mode 100644 NumWindow.java create mode 100644 WheelDrawing.java delete mode 100644 WindowDrawing.java diff --git a/.idea/misc.xml b/.idea/misc.xml index 3d9c2f8..12f22af 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/DrawingRoadTrain.java b/DrawingRoadTrain.java index 1c9287e..7b8830e 100644 --- a/DrawingRoadTrain.java +++ b/DrawingRoadTrain.java @@ -1,7 +1,8 @@ + import java.awt.*; public class DrawingRoadTrain { - private WindowDrawing windowDrawing; + private WheelDrawing wheelDrawing; public EntityRoadTrain EntityRoadTrain; private int _pictureWidth; private int _pictureHeight; @@ -10,17 +11,17 @@ public class DrawingRoadTrain { private int _roadTrainWidth = 200; private int _roadTrainHeight = 100; public boolean Init(int speed, double weight, Color bodyColor, Color - additionalColor, boolean wheel, boolean door, boolean light, int numWindow, int width, int height) + additionalColor, boolean wheel, boolean door, boolean light, int numWheel, int width, int height) { _pictureWidth = width; _pictureHeight = height; if (_pictureHeight < _roadTrainHeight || _pictureWidth < _roadTrainWidth) return false; EntityRoadTrain = new EntityRoadTrain(); - EntityRoadTrain.Init(speed, weight, bodyColor, additionalColor,wheel, door, light, numWindow); + EntityRoadTrain.Init(speed, weight, bodyColor, additionalColor,wheel, door, light, numWheel); - windowDrawing = new WindowDrawing(); - windowDrawing.setNumWindow(numWindow); + wheelDrawing = new WheelDrawing(); + wheelDrawing.setNumWheel(numWheel); return true; } public void SetPosition(int x, int y) @@ -67,9 +68,6 @@ public class DrawingRoadTrain { } // машина g.drawRect(_startPosX, _startPosY + 50, 160, 20); // кузов - g.drawOval(_startPosX + 5, _startPosY + 70, 30, 30); // колесо - g.drawOval(_startPosX + 40, _startPosY + 70, 30, 30); // колесо - g.drawOval(_startPosX + 120, _startPosY + 70, 30, 30); // колесо g.drawRect(_startPosX + 120, _startPosY + 10, 40, 40); // кабина g.drawRect(_startPosX + 10, _startPosY, 90, 50); // бак с водой g.drawRect(_startPosX + 130, _startPosY + 20, 30, 20); // окно @@ -77,9 +75,8 @@ public class DrawingRoadTrain { g.drawRect(_startPosX + 170, _startPosY + 80, 40, 10); // щетка // обвесы g.setColor(EntityRoadTrain.AdditionalColor); - if (EntityRoadTrain.Wheel) { - g.fillOval(_startPosX + 75, _startPosY + 70, 30, 30); // колесо - } + wheelDrawing.Draw(_startPosX, _startPosY, EntityRoadTrain.AdditionalColor, g); + if (EntityRoadTrain.Door) { g.fillRect(_startPosX + 40, _startPosY + 20, 20, 30); // дверь } diff --git a/EntityRoadTrain.java b/EntityRoadTrain.java index 061cf6e..e397359 100644 --- a/EntityRoadTrain.java +++ b/EntityRoadTrain.java @@ -9,11 +9,11 @@ public class EntityRoadTrain { public boolean Door; public boolean Light; public double Step; - public int numWindow; + public int numWheel; public void Init(int speed, double weight, Color bodyColor, Color - additionalColor, boolean wheel, boolean door, boolean light, int _numWindow) + additionalColor, boolean wheel, boolean door, boolean light, int numwheel) { - numWindow = _numWindow; + numWheel = numwheel; Speed = speed; Weight = weight; BodyColor = bodyColor; diff --git a/FormRoadTrain.java b/FormRoadTrain.java index 34c9e3f..1672cc2 100644 --- a/FormRoadTrain.java +++ b/FormRoadTrain.java @@ -57,7 +57,7 @@ public class FormRoadTrain { new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)), new Color(random.nextInt(0, 256), random.nextInt(0, 256), random.nextInt(0, 256)), random.nextInt(0, 2) == 1, random.nextInt(0, 2) == 1,random.nextInt(0, 2) == 1, - random.nextInt(1, 4)*10, 1000, 560); + random.nextInt(1, 4), 1000, 560); _drawingRoadTrain.SetPosition(random.nextInt(10, 100), random.nextInt(10, 100)); canv._drawingRoadTrain = _drawingRoadTrain; Draw(); diff --git a/NumWheel.java b/NumWheel.java new file mode 100644 index 0000000..c1c8900 --- /dev/null +++ b/NumWheel.java @@ -0,0 +1,6 @@ +public enum NumWheel +{ + oneWheel, + twoWheel, + threeWheel +} diff --git a/NumWindow.java b/NumWindow.java deleted file mode 100644 index 358af2f..0000000 --- a/NumWindow.java +++ /dev/null @@ -1,6 +0,0 @@ -public enum NumWindow -{ - tenWindows, - twentyWindows, - thirtyWindows -} diff --git a/WheelDrawing.java b/WheelDrawing.java new file mode 100644 index 0000000..85389dd --- /dev/null +++ b/WheelDrawing.java @@ -0,0 +1,42 @@ +import java.awt.*; + +public class WheelDrawing { + private NumWheel numWheel; + public NumWheel getSomeProperty() { + return numWheel; + } + public void setNumWheel(int kWheel){ + switch(kWheel){ + case 1: + numWheel = NumWheel.oneWheel; + break; + case 2: + numWheel = NumWheel.twoWheel; + break; + case 3: + numWheel = NumWheel.threeWheel; + break; + default: + numWheel = NumWheel.oneWheel; + System.out.println("Ошибка! Количество " + kWheel); + break; + } + } + void Draw(int _startPosX, int _startPosY, Color color, Graphics2D g){ + g.setColor(color); + switch (numWheel) { + case oneWheel -> { + g.drawOval(_startPosX + 120, _startPosY + 70, 30, 30); + } + case twoWheel -> { + g.drawOval(_startPosX + 120, _startPosY + 70, 30, 30); + g.drawOval(_startPosX + 50, _startPosY + 70, 30, 30); + } + case threeWheel -> { + g.drawOval(_startPosX + 120, _startPosY + 70, 30, 30); + g.drawOval(_startPosX + 55, _startPosY + 70, 30, 30); + g.drawOval(_startPosX + 15, _startPosY + 70, 30, 30); + } + }; + } +} diff --git a/WindowDrawing.java b/WindowDrawing.java deleted file mode 100644 index 4ce9f95..0000000 --- a/WindowDrawing.java +++ /dev/null @@ -1,39 +0,0 @@ -import java.awt.*; - -public class WindowDrawing{ - private NumWindow numWindow; - public NumWindow getSomeProperty() { - return numWindow; - } - public void setNumWindow(int kWindow){ - switch(kWindow){ - case 10: - numWindow = NumWindow.tenWindows; - break; - case 20: - numWindow = NumWindow.twentyWindows; - break; - case 30: - numWindow = NumWindow.thirtyWindows; - break; - default: - numWindow = NumWindow.tenWindows; - System.out.println("Ошибка! Количество " + kWindow); - break; - } - } - void Draw(int _startPosX, int _startPosY, Color color, Graphics2D g){ - g.setColor(color); - int windowSpacing = 4; - int windowCount = switch (numWindow) { - case tenWindows -> 10; - case twentyWindows -> 20; - case thirtyWindows -> 30; - }; - for (int j = 0; j < windowCount / 10; j++) { - for (int i = 0; i < 10; i++) { - g.fillOval(_startPosX + 35 + i * 8, _startPosY + 30 + j * windowSpacing, 4, 4); - } - } - } -}