Skip to content
Snippets Groups Projects
Commit a6c63e3d authored by YOUSSOUF Ali moussa's avatar YOUSSOUF Ali moussa
Browse files

integration du rapport et du diagarmme

parent eba8bac7
No related branches found
No related tags found
No related merge requests found
Pipeline #25812 passed
Rapport/Diagramme.png

55.3 KiB

File added
...@@ -17,7 +17,7 @@ public class SimulatorApplication extends javafx.application.Application { ...@@ -17,7 +17,7 @@ public class SimulatorApplication extends javafx.application.Application {
private static final int COLUMN_COUNT = 20; private static final int COLUMN_COUNT = 20;
private static final int BOX_WIDTH = 30; private static final int BOX_WIDTH = 30;
private static final int BOX_HEIGHT = 30; private static final int BOX_HEIGHT = 30;
public static final int INITIAL_FIRE_COUNT = 3; public static final int INITIAL_FIRE_COUNT = 10;
public static final int INITIAL_FIREFIGHTER_COUNT = 6; public static final int INITIAL_FIREFIGHTER_COUNT = 6;
public static final int INITIAL_CLOUD_COUNT = 6; public static final int INITIAL_CLOUD_COUNT = 6;
public static final int INITIAL_MONTAIN_COUNT = 4; public static final int INITIAL_MONTAIN_COUNT = 4;
......
...@@ -6,62 +6,12 @@ import java.util.*; ...@@ -6,62 +6,12 @@ import java.util.*;
public class FireFighters extends AbstractFighter implements ModelElement { public class FireFighters extends AbstractFighter implements ModelElement {
/* private List<Position> fireFightersPositions;
public FireFighters() {
}
public void add(Position position){
fireFightersPositions.add(position);
}
public List<Position> getFireFightersPositions() {
return fireFightersPositions;
}
public void initializeElements(int initialFirefighterCount, int rowCount, int columnCount) {
this.rowCount=rowCount;
this.columnCount=columnCount;
fireFightersPositions = new ArrayList<>();
for (int index = 0; index < initialFirefighterCount; index++)
fireFightersPositions.add(randomPosition());
}
public List<Position> updateFirefighters(Set<Position> firePositions, Montains mountains) {
List<Position> result = new ArrayList<>();
List<Position> firefighterNewPositions = new ArrayList<>();
for (Position firefighterPosition : fireFightersPositions) {
Position newFirefighterPosition = neighborClosestToFire(firefighterPosition,firePositions);
if (firefighterNewPositions.contains(newFirefighterPosition) || mountains.getMontainsPositions().contains(newFirefighterPosition)){
firefighterNewPositions.add(firefighterPosition);
extinguish(firefighterPosition, firePositions);
}
else {
firefighterNewPositions.add(newFirefighterPosition);
extinguish(newFirefighterPosition, firePositions);
}
result.add(firefighterPosition);
result.add(newFirefighterPosition);
List<Position> neighborFirePositions = neighbors(newFirefighterPosition).stream()
.filter(firePositions::contains).toList();
for(Position firePosition : neighborFirePositions)
extinguish(firePosition,firePositions);
result.addAll(neighborFirePositions);
}
fireFightersPositions = firefighterNewPositions;
return result;
}
*/
public FireFighters() { public FireFighters() {
} }
......
...@@ -5,5 +5,5 @@ import util.Position; ...@@ -5,5 +5,5 @@ import util.Position;
import java.util.List; import java.util.List;
public interface ModelElement { public interface ModelElement {
Position randomPosition(); // Position randomPosition();
} }
...@@ -28,7 +28,7 @@ public class Montains extends BoardMethods implements ModelElement { ...@@ -28,7 +28,7 @@ public class Montains extends BoardMethods implements ModelElement {
for (int index = 0; index < initialMontainsCount; index++) { for (int index = 0; index < initialMontainsCount; index++) {
Position blockStart = randomPosition(); Position blockStart = randomPosition();
int blockSize = 3; int blockSize = 1;
for (int rowOffset = 0; rowOffset < blockSize; rowOffset++) { for (int rowOffset = 0; rowOffset < blockSize; rowOffset++) {
for (int colOffset = 0; colOffset < blockSize; colOffset++) { for (int colOffset = 0; colOffset < blockSize; colOffset++) {
// Ajoutez chaque position du bloc à la liste des positions des montagnes // Ajoutez chaque position du bloc à la liste des positions des montagnes
......
...@@ -7,62 +7,7 @@ import java.util.List; ...@@ -7,62 +7,7 @@ import java.util.List;
import java.util.Set; import java.util.Set;
public class Motorized_Firefighter extends AbstractFighter { public class Motorized_Firefighter extends AbstractFighter {
/*
private List<Position> Motorized_fireFightersPositions;
public Motorized_Firefighter() {
}
public void add(Position position){
Motorized_fireFightersPositions.add(position);
}
public List<Position> getMotorized_fireFightersPositions() {
return Motorized_fireFightersPositions;
}
public void initializeElements(int initialFirefighterCount, int rowCount, int columnCount) {
this.rowCount=rowCount;
this.columnCount=columnCount;
Motorized_fireFightersPositions = new ArrayList<>();
for (int index = 0; index < initialFirefighterCount; index++)
Motorized_fireFightersPositions.add(randomPosition());
}
public List<Position> updateMotorized_firefighter(Set<Position> firePositions, Montains mountains) {
List<Position> result = new ArrayList<>();
for (int i = 0; i < 2; i++) {
List<Position> firefighterNewPositions = new ArrayList<>();
for (Position firefighterPosition : Motorized_fireFightersPositions) {
Position newFirefighterPosition = neighborClosestToFire(firefighterPosition, firePositions);
if (firefighterNewPositions.contains(newFirefighterPosition) || mountains.getMontainsPositions().contains(newFirefighterPosition)) {
firefighterNewPositions.add(firefighterPosition);
extinguish(firefighterPosition, firePositions);
} else {
firefighterNewPositions.add(newFirefighterPosition);
extinguish(newFirefighterPosition, firePositions);
}
result.add(firefighterPosition);
result.add(newFirefighterPosition);
List<Position> neighborFirePositions = neighbors(newFirefighterPosition).stream()
.filter(firePositions::contains).toList();
for (Position firePosition : neighborFirePositions)
extinguish(firePosition, firePositions);
result.addAll(neighborFirePositions);
}
Motorized_fireFightersPositions = firefighterNewPositions;
}
return result;
}
*/
public List<Position> updateMotorizedFirefighters(Set<Position> firePositions, Montains montains) { public List<Position> updateMotorizedFirefighters(Set<Position> firePositions, Montains montains) {
List<Position> result = new ArrayList<>(); List<Position> result = new ArrayList<>();
......
...@@ -33,7 +33,7 @@ public class Roads extends BoardMethods implements ModelElement { ...@@ -33,7 +33,7 @@ public class Roads extends BoardMethods implements ModelElement {
Position blockStart = randomPosition(); Position blockStart = randomPosition();
// Définir la taille du bloc (5x5, par exemple) // Définir la taille du bloc (5x5, par exemple)
int blockSize = 6; int blockSize = 1;
for (int rowOffset = 0; rowOffset < blockSize; rowOffset++) { for (int rowOffset = 0; rowOffset < blockSize; rowOffset++) {
for (int colOffset = 0; colOffset < 2; colOffset++) { for (int colOffset = 0; colOffset < 2; colOffset++) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment