Advertisement
Guest User

Code robot vague

a guest
Feb 21st, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.06 KB | None | 0 0
  1.   while((sizeof(frontiere)/sizeof(QPoint)) > 0){
  2.  
  3.     // on extrait le premier point de la frontière
  4.     QPoint extrait = frontiere[indiceDebut];
  5.     int ext_x = extrait.x();
  6.     int ext_y = extrait.y();
  7.     int lg;
  8.     int cl;
  9.     int distance = 2;
  10.     // pour tous les voisins de ce point
  11.     POUR_TOUS_VOISINS(ext_x, ext_y, lg, cl){
  12.  
  13.       // on calcule la distance (* 2) entre le point et le voisin :
  14.       // 2 (mouvement horizontal ou vertical) ou 3 (diagonal)
  15.       if(ext_x != lg && ext_y != cl){//Mouvement diagonal
  16.         distance = 6;
  17.       }else{//Mouvement horizontal ou vertical
  18.         distance = 4;
  19.       }
  20.       // si la nouvelle distance au voisin est meilleure
  21.       // que l'ancienne (et que le voisin n'est pas en collision)
  22.       if(!enCollision(lg,cl) && (dist(lg,cl) < dist(ext_x, ext_y))){
  23.           // modifie la nouvelle distance
  24.           setDist(lg,cl, dist(lg,cl));
  25.           QPoint* point = new QPoint(lg, cl);
  26.           // et on ajoute le voisin à la frontière
  27.           frontiere[indiceDebut] = *point;
  28.       }
  29.     }
  30.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement