diff --git a/methods/VoronoiDiagram.cpp b/methods/VoronoiDiagram.cpp
index 1c49edfd8ba0709863fda80df76868096712fdd7..61160a7d7f0f76ee50e99d49ac3a8f8c73c07fed 100644
--- a/methods/VoronoiDiagram.cpp
+++ b/methods/VoronoiDiagram.cpp
@@ -65,22 +65,26 @@ std::vector<std::pair<polygon_2d, int> > VoronoiDiagram::getVoronoiPolygons(vect
           XInFrame.push_back(XInFrame[0]+10);
           YInFrame.push_back(YInFrame[0]+10);
           VInFrame.push_back(VInFrame[0]);
-          IdInFrame.push_back(IdInFrame[0]+1);
+          //IdInFrame.push_back(IdInFrame[0]+1);
+          IdInFrame.push_back(-1);
           // up left
           XInFrame.push_back(XInFrame[0]-10);
           YInFrame.push_back(YInFrame[0]+10);
           VInFrame.push_back(VInFrame[0]);
-          IdInFrame.push_back(IdInFrame[0]+2);
+          //IdInFrame.push_back(IdInFrame[0]+2);
+          IdInFrame.push_back(-2);
           // down right
           XInFrame.push_back(XInFrame[0]+10);
           YInFrame.push_back(YInFrame[0]-10);
           VInFrame.push_back(VInFrame[0]);
-          IdInFrame.push_back(IdInFrame[0]+3);
+          //IdInFrame.push_back(IdInFrame[0]+3);
+          IdInFrame.push_back(-3);
           // down left
           XInFrame.push_back(XInFrame[0]-10);
           YInFrame.push_back(YInFrame[0]-10);
           VInFrame.push_back(VInFrame[0]);
-          IdInFrame.push_back(IdInFrame[0]+4);
+          // IdInFrame.push_back(IdInFrame[0]+4);
+          IdInFrame.push_back(-4);
      }
 
      for (int i = 0; i < numPedsInFrame; i++)
@@ -129,6 +133,9 @@ std::vector<std::pair<polygon_2d, int> > VoronoiDiagram::getVoronoiPolygons(vect
                     break;
                }
           }
+          if(IdInFrame[Ncell] < 0 )
+               continue;
+
           XInFrame[Ncell] = thispoint.x();
           YInFrame[Ncell] = thispoint.y();
           int NumVertex = 0;
@@ -222,9 +229,14 @@ std::vector<std::pair<polygon_2d, int> > VoronoiDiagram::getVoronoiPolygons(vect
           //cout << "poly is: " << typeid(poly).name() << '\n'
           int id_ped = IdInFrame[Ncell];
           std::pair<polygon_2d, int>  poly_id = std::make_pair(poly, id_ped);
+          // if (id_ped < 0 )
+          // {
+          //      std::cout << "HH id: " << id_ped << "\n";
+          //      continue;
+          // }
           polygons_id.push_back(poly_id);
           Ncell++;
-     }
+     }// for voronoi cells
      return polygons_id;
 }