fixed a lost first element in circles
authorAnatoly <Titov_AI@pnpi.nrcki.ru>
Thu, 29 Mar 2018 11:18:19 +0000 (14:18 +0300)
committerAnatoly <Titov_AI@pnpi.nrcki.ru>
Thu, 29 Mar 2018 11:18:19 +0000 (14:18 +0300)
src/spirals.cpp

index 7335970ba4d18ec31d96327c5e3d15040bed0af7..171a506fedb97b5d6017ae41f404c8cf19ac5920 100644 (file)
@@ -256,6 +256,8 @@ void make_circles (std::vector< std::vector< std::vector< int > > > &circles, st
     RVec a, b, c;
     rvec_sub(temp[0], kernel.back().krnl.front(), a);
     rvec_sub(kernel.back().krnl.front(), kernel.back().krnl.back(), b);
+    circles.back().resize(1);
+    circles.back().back().push_back(temp[0]);
     for (int i = 1; i < temp.size(); i++) {
         rvec_sub(temp[i], kernel.back().krnl[i], c);
         tempt = left_right_turn(a, b, c);
@@ -267,9 +269,6 @@ void make_circles (std::vector< std::vector< std::vector< int > > > &circles, st
         }
         turn = tempt;
         if (st1 && !st2 || !st1 && st2) {
-            if (circles.back().size() == 0) {
-                circles.back().resize(1);
-            }
             circles.back().back().push_back(i);
         } else {
             circles.back().resize(circles.back().size() + 1);
@@ -405,7 +404,7 @@ Spirals::analyzeFrame(int frnr, const t_trxframe &fr, t_pbc *pbc,
 
     std::vector< std::vector< RVec > > window_temp;
     window_temp.resize(window_temp2);
-    for (int i = 0; i < window_temp.size(); i++) {
+    for (int i = 0; i < window_temp2; i++) {
         window_kernel[i].resize(window_kernel[i].size() + 1);
         window_kernel[i].back().p = kernel.back().p;
         window_kernel[i].back().x = kernel.back().x;