This commit is contained in:
maudulo
2025-03-22 16:58:58 +01:00
parent 8ee12a22b1
commit 981f50ffc3
+92
View File
@@ -0,0 +1,92 @@
const Orientation = Object.freeze({
HAUT: Symbol("haut"),
BAS: Symbol("bas"),
GAUCHE: Symbol("gauche"),
DROITE: Symbol("droite")
});
class ModeAutomatique {
casesParcourues = new Array();
cheminsParcours = new Array();
cheminsConnus = new Array();
constructor(){
// valeurs pour la première position
posX=0;
posY=0;
rotation=HAUT;
}
run(){
this.analyseEnvironnement(); // met à jour les obstacles
this.move(); // en fonction des chemins connus non encore parcourus
//obstacle
if (!this.aBouge){
// recule
// teste de 30 degrés
// tente d'avancer
// teste de 30 degrés
// tente d'avancer
//
}
}
analyseEnvironnement(){
if (isCaseAnalysee()) {
isObstacleDevant();
tourne(); //
isObstacleDevant();
tourne();
isObstacleDevant();
tourne();
isObstacleDevant();
tourne();
}
// SI case déjà visitée, alors on connait ses obstacles
}
isCaseAnalysee(){
// TODO
}
updateCoordonnees() {
switch (this.rotation) {
case Orientation.HAUT:
break;
case Orientation.BAS:
case Orientation.GAUCHE:
console.log("Mangoes and papayas are $2.79 a pound.");
// Expected output: "Mangoes and papayas are $2.79 a pound."
break;
case Orientation.DROITE:
console.log(`Sorry, we are out of ${expr}.`);
}
}
}
class Case {
coordX;
coordY;
chemins;
constructor(coordX, coordY){
this.coordX = coordX;
this.coordY = coordY;
chemins = new Array();
}
addCheminPossible(chemin){
this.chemins.push(chemin)
}
getCheminsPossibles(){
return this.chemins
}
}