// méthode qui retourne liste de case sauf le dernier élément public List <CaseCouloir> generationList(CaseCouloir d, CaseCouloir a) { List <CaseCouloir> list = new List <CaseCouloir>(); int n, index; if (d.getCol() == a.getCol()) { int col; n = a.getLig() - d.getLig(); col = d.getCol(); if (n > 0) { for (int lig = d.getLig(); lig < a.getLig(); lig++) { index = lig * nbCol + col; list.Add(grille[index]); } } else { for (int lig = d.getLig(); a.getLig() < lig; lig--) { index = lig * nbCol + col; list.Add(grille[index]); } } } else { int lig; n = a.getCol() - d.getCol(); lig = d.getLig(); if (n > 0) { for (int col = d.getCol(); col < a.getLig(); col++) { index = lig * nbCol + col; list.Add(grille[index]); } } else { for (int col = d.getCol(); a.getCol() < col; col--) { index = lig * nbCol + col; list.Add(grille[index]); } } } return(list); }
// ajoute une case dans la liste et incrémente de 1 la distance public void addCase(CaseCouloir caseC) { iti.Add(caseC); distance++; }