PIBD-13_Fomichev_V.S._LabWork02_Hard #2

Closed
slavaxom9k wants to merge 6 commits from labwork02 into labwork01
6 changed files with 47 additions and 56 deletions
Showing only changes of commit 78d6920402 - Show all commits

View File

@ -0,0 +1,12 @@
package DrawningRollers;
import java.awt.*;
public class DrawningRollersCross extends DrawningRollersTriangle {
protected void drawRollers(Graphics2D g, int posX, int posY) {
g.setColor(Color.BLACK);
g.drawLine(posX+3,posY+3,posX+12,posY+12);
g.drawLine(posX+12,posY+3,posX+3,posY+12);
}
}

View File

@ -1,16 +0,0 @@
package DrawningRollers;
import java.awt.*;
public class DrawningRollersHeart extends DrawningRollersCircle {
protected void drawRollers(Graphics2D g, int posX, int posY) {
int[] HeartX = {posX + 2, posX, posX, posX + 1, posX + 2, posX + 3, posX + 5, posX + 5};
int[] HeartY = {posY + 4, posY + 2, posY, posY, posY + 1, posY, posY, posY + 2};
g.setColor(Color.cyan);
g.fillPolygon(HeartX, HeartY, HeartX.length);
g.setColor(Color.black);
g.drawPolygon(HeartX, HeartY, HeartX.length);
}
}

View File

@ -2,11 +2,12 @@ package DrawningRollers;
import java.awt.*;
public class DrawningRollersSquare extends DrawningRollersCircle{
public class DrawningRollersSquare extends DrawningRollersTriangle {
protected void drawRollers(Graphics2D g, int posX, int posY) {
g.setColor(Color.cyan);
g.fillRect(posX, posY, 3, 3);
g.setColor(Color.black);
g.drawRect(posX, posY, 3, 3);
g.setColor(Color.BLACK);
g.drawLine(posX+3,posY+3,posX+3,posY+12);
g.drawLine(posX+3,posY+12,posX+12,posY+12);
g.drawLine(posX+12,posY+12,posX+12,posY+3);
g.drawLine(posX+12,posY+3,posX+3,posY+3);
}
}

View File

@ -2,7 +2,7 @@ package DrawningRollers;
import java.awt.*;
public class DrawningRollersCircle implements IDifferentRollers {
public class DrawningRollersTriangle implements IDifferentRollers {
private CountRollers _rollers;
public CountRollers getCount() {
return _rollers;
@ -25,10 +25,10 @@ public class DrawningRollersCircle implements IDifferentRollers {
}
}
protected void drawRollers(Graphics2D g, int posX, int posY) {
g.setColor(Color.cyan);
g.fillOval(posX, posY, 3, 3);
g.setColor(Color.black);
g.drawOval(posX, posY, 3, 3);
g.setColor(Color.BLACK);
g.drawLine(posX+7,posY,posX+3,posY+12);
g.drawLine(posX+3,posY+12,posX+12,posY+12);
g.drawLine(posX+12,posY+12,posX+7,posY);
}
public void Draw(Graphics2D g, int _startPosX, int _startPosY) {
g.setColor(Color.BLACK);
@ -37,39 +37,33 @@ public class DrawningRollersCircle implements IDifferentRollers {
}
//нижние катки ЦВЕТ
g.setColor(Color.GRAY);
for (int i = 0; i < 10; ++i) {
drawRollers(g, _startPosX + 19 + i * 8, _startPosY + 21);
}
g.fillOval(_startPosX + 40, _startPosY + 90, 15, 15);
g.fillOval(_startPosX + 55, _startPosY + 90, 15, 15);
if (_rollers != CountRollers.FourRollers) {
for (int i = 0; i < 5; ++i) {
drawRollers(g, _startPosX - 15 + i * 5, _startPosY + 28);
drawRollers(g, _startPosX + 115 + i * 5, _startPosY + 28);
}
g.fillOval(_startPosX + 70, _startPosY + 90, 15, 15);
}
if (_rollers == CountRollers.SixRollers) {
for (int i = 0; i < 10; ++i) {
drawRollers(g, _startPosX + 19 + i * 8, _startPosY + 37);
}
g.fillOval(_startPosX + 85, _startPosY + 90, 15, 15);
}
//нижние катки ОТРИСОВКА
g.setColor(Color.BLACK);
for (int i = 0; i < 10; ++i) {
drawRollers(g, _startPosX + 19 + i * 8, _startPosY + 21);
}
g.drawOval(_startPosX + 40, _startPosY + 90, 15, 15);
g.drawOval( _startPosX + 55, _startPosY + 90, 15, 15);
drawRollers(g,_startPosX + 40,_startPosY + 90);
drawRollers(g,_startPosX + 55,_startPosY + 90);
if (_rollers != CountRollers.FourRollers) {
for (int i = 0; i < 5; ++i) {
drawRollers(g, _startPosX - 15 + i * 5, _startPosY + 28);
drawRollers(g, _startPosX + 115 + i * 5, _startPosY + 28);
}
g.drawOval(_startPosX + 70, _startPosY + 90, 15, 15);
drawRollers(g,_startPosX+70,_startPosY+90);
}
if (_rollers == CountRollers.SixRollers) {
for (int i = 0; i < 10; ++i) {
drawRollers(g, _startPosX + 19 + i * 8, _startPosY + 37);
}
g.drawOval(_startPosX + 85, _startPosY + 90, 15, 15);
drawRollers(g,_startPosX+85,_startPosY+90);
}
}
}

View File

@ -45,16 +45,16 @@ public class DrawningArmoredCar extends JPanel {
Random random = new Random();
switch (random.nextInt(0, 3)) {
case 0:
_rollers = new DrawningRollersCircle();
_rollers = new DrawningRollersTriangle();
break;
case 1:
_rollers = new DrawningRollersHeart();
_rollers = new DrawningRollersCross();
break;
case 2:
_rollers = new DrawningRollersSquare();
break;
default:
_rollers = new DrawningRollersCircle();
_rollers = new DrawningRollersTriangle();
break;
}
_rollers.SetCount(countRollers);

View File

@ -65,17 +65,17 @@ public class FormAntiAircraftGun extends JFrame {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(null);
buttonCreateAntiAircraftGun.setBounds(12, 355, 146, 33);
buttonCreateArmoredCar.setBounds(182, 355, 146, 33);
buttonCreateAntiAircraftGun.setBounds(12, 500, 146, 33);
buttonCreateArmoredCar.setBounds(182, 500, 146, 33);
labelStrategy.setBounds(630, 20, 146, 33);
comboBoxStrategy.setBounds(630, 50, 146, 20);
buttonStrategy.setBounds(630, 80, 146, 33);
buttonUp.setBounds(679, 313, 48, 44);
buttonRight.setBounds(728, 358, 48, 44);
buttonLeft.setBounds(630, 358, 48, 44);
buttonDown.setBounds(679, 358, 48, 44);
buttonUp.setBounds(679, 413, 48, 44);
buttonRight.setBounds(728, 458, 48, 44);
buttonLeft.setBounds(630, 458, 48, 44);
buttonDown.setBounds(679, 458, 48, 44);
canvas.setBounds(0, 0, 790, 460);
add(buttonCreateAntiAircraftGun);