]> Creatis software - clitk.git/blobdiff - vv/vvLandmarks.cxx
Merge branch 'master' of git.creatis.insa-lyon.fr:clitk
[clitk.git] / vv / vvLandmarks.cxx
index 184df28a9e2a95fc4bbb756c8430c3ff909395ad..682398f49deca17954a5dc95ed25a8364a17c699 100644 (file)
@@ -3,7 +3,7 @@
 
   Authors belong to:
   - University of LYON              http://www.universite-lyon.fr/
-  - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
+  - Léon Bérard cancer center       http://www.centreleonberard.fr
   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
   This software is distributed WITHOUT ANY WARRANTY; without even
@@ -14,7 +14,7 @@
 
   - BSD        See included LICENSE.txt file
   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
-  ======================================================================-====*/
+  ===========================================================================**/
 #include "vvLandmarks.h"
 
 #include <ios>
@@ -104,6 +104,25 @@ void vvLandmarks::RemoveLastLandmark()
 //--------------------------------------------------------------------
 
 
+//--------------------------------------------------------------------
+void vvLandmarks::RemoveLandmark(int index)
+{
+  // erase a vtkPoint by shifiting the array .
+  // not a problem here because there are no 
+  // pologyons linking the points
+  int npoints = mPoints[mLandmarks[index].coordinates[3]]->GetNumberOfPoints();
+  int t = mLandmarks[index].coordinates[3];
+  for (int i = index; i < npoints - 1; i++)
+    mPoints[t]->InsertPoint(i, mPoints[t]->GetPoint(i+1));
+  mPoints[t]->SetNumberOfPoints(npoints-1);
+  mPolyData->Modified();
+
+  mLandmarks.erase(mLandmarks.begin() + index);
+  mIds->RemoveLastTuple();
+}
+//--------------------------------------------------------------------
+
+
 //--------------------------------------------------------------------
 void vvLandmarks::ChangeComments(int index, std::string comments)
 {