]> Creatis software - clitk.git/blobdiff - common/clitkDicomRT_ROI.cxx
Add EPID conversion (2^16 - value)/alpha
[clitk.git] / common / clitkDicomRT_ROI.cxx
index 6bb2e25c7ff4dd51bba141ce16846764f5657dfe..0219b4aea9763c32cf05891630a2162fad38c2ef 100644 (file)
@@ -39,7 +39,6 @@ clitk::DicomRT_ROI::DicomRT_ROI()
 //--------------------------------------------------------------------
 clitk::DicomRT_ROI::~DicomRT_ROI()
 {
-  mImage->Delete();
 }
 //--------------------------------------------------------------------
 
@@ -152,7 +151,7 @@ void clitk::DicomRT_ROI::Read(std::map<int, std::string> & rois, gdcm::SQItem *
   bool delta_computed=false;
   double last_z=0;
   for(gdcm::SQItem* j=contours->GetFirstSQItem(); j!=0; j=contours->GetNextSQItem()) {
-    DicomRT_Contour * c = new DicomRT_Contour;
+    DicomRT_Contour::Pointer c = DicomRT_Contour::New();
     bool b = c->Read(j);
     if (b) {
       mListOfContours.push_back(c);
@@ -196,12 +195,14 @@ clitk::DicomRT_Contour * clitk::DicomRT_ROI::GetContour(int n)
 //--------------------------------------------------------------------
 void clitk::DicomRT_ROI::ComputeMesh()
 {
-  vtkAppendPolyData * append = vtkAppendPolyData::New();
+  vtkSmartPointer<vtkAppendPolyData> append = vtkSmartPointer<vtkAppendPolyData>::New();
   for(unsigned int i=0; i<mListOfContours.size(); i++) {
     append->AddInput(mListOfContours[i]->GetMesh());
   }
   append->Update();
-  mMesh = append->GetOutput();
+  mMesh = vtkSmartPointer<vtkPolyData>::New();
+  mMesh->DeepCopy(append->GetOutput());
   mMeshIsUpToDate = true;
 }
 //--------------------------------------------------------------------