X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkDicomRT_Contour.cxx;h=9a98045faf174182f8cd7cc0f23b1c45c4356988;hb=8ba069c89cddf44e9bd529b781bb5ddfd8d21adf;hp=cee3b678b8891718ece52546469e5e4eef23af27;hpb=1a13aa34de4f99334b27050c18b32e6e4c8f0650;p=clitk.git diff --git a/common/clitkDicomRT_Contour.cxx b/common/clitkDicomRT_Contour.cxx index cee3b67..9a98045 100644 --- a/common/clitkDicomRT_Contour.cxx +++ b/common/clitkDicomRT_Contour.cxx @@ -25,6 +25,7 @@ clitk::DicomRT_Contour::DicomRT_Contour() { mMeshIsUpToDate = false; mNbOfPoints = 0; + mZ = -1; } //-------------------------------------------------------------------- @@ -71,23 +72,22 @@ bool clitk::DicomRT_Contour::Read(gdcm::SQItem * item) assert(points.size() == static_cast(mNbOfPoints)*3); // Organize values - mData = vtkPoints::New(); + mData = vtkSmartPointer::New(); mData->SetDataTypeToDouble(); mData->SetNumberOfPoints(mNbOfPoints); - double z = -1; for(unsigned int i=0; iSetPoint(i, p); - if (z == -1) z = p[2]; - if (p[2] != z) { + if (mZ == -1) mZ = p[2]; + if (p[2] != mZ) { DD(i); DD(p[2]); - DD(z); + DD(mZ); std::cout << "ERROR ! contour not in the same slice" << std::endl; - assert(p[2] == z); + assert(p[2] == mZ); } } @@ -111,9 +111,10 @@ vtkPolyData * clitk::DicomRT_Contour::GetMesh() void clitk::DicomRT_Contour::ComputeMesh() { // DD("ComputeMesh Contour"); - mMesh = vtkPolyData::New(); + mMesh = vtkSmartPointer::New(); mMesh->Allocate(); //for cell structures - mMesh->SetPoints(vtkPoints::New()); + mPoints = vtkSmartPointer::New(); + mMesh->SetPoints(mPoints); vtkIdType ids[2]; for (unsigned int idx=0 ; idxGetPoints()->InsertNextPoint(mData->GetPoint(idx)[0],