X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaVtk%2FvtkImageDataStrucPoints.cpp;h=1299cdc5c71bcac9de708eca6220b89fb085fb1f;hb=79a0adc7590431ebc6044df732b0a40e0b39ba78;hp=44c33a31788ffdb90d39b6a6402cf3ebce1cebcc;hpb=562222204bce7de0a24fac67cb4e5acc05b20f5d;p=creaVtk.git diff --git a/lib/creaVtk/vtkImageDataStrucPoints.cpp b/lib/creaVtk/vtkImageDataStrucPoints.cpp index 44c33a3..1299cdc 100644 --- a/lib/creaVtk/vtkImageDataStrucPoints.cpp +++ b/lib/creaVtk/vtkImageDataStrucPoints.cpp @@ -38,23 +38,28 @@ vtkImageDataStrucPoints::~vtkImageDataStrucPoints() } void vtkImageDataStrucPoints::joinComponents(vtkImageData* imageX, vtkImageData* imageY, vtkImageData* imageZ) { + int ext[6]; imageY->Modified(); +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 imageY->Update(); - int ext[6]; imageY->GetWholeExtent(ext); +#else + imageY->GetExtent(ext); +#endif int dim[3]; - double spc[3];; - dim[0]=ext[1]-ext[0]+1; - dim[1]=ext[3]-ext[2]+1; - dim[2]=ext[5]-ext[4]+1; + double spc[3]; + dim[0]=ext[1]-ext[0]+1; + dim[1]=ext[3]-ext[2]+1; + dim[2]=ext[5]-ext[4]+1; std::cout<<"dim "<< dim[0] <<" "<< dim[1] <<" "<< dim[2] <GetSpacing(spc); - double *ptrUCharX = (double *)imageX->GetScalarPointer(); - double *ptrUCharY = (double *)imageY->GetScalarPointer(); - double *ptrUCharZ = (double *)imageZ->GetScalarPointer(); + double *ptrX = (double *)imageX->GetScalarPointer(); + double *ptrY = (double *)imageY->GetScalarPointer(); + double *ptrZ = (double *)imageZ->GetScalarPointer(); long int sizeimage = dim[0]*dim[1]*dim[2]; @@ -70,31 +75,44 @@ void vtkImageDataStrucPoints::joinComponents(vtkImageData* imageX, vtkImageData* int i; -printf("EED vtkImageDataStrucPoints::joinComponents sizeimage%d\n", sizeimage ); +printf("EED vtkImageDataStrucPoints::joinComponents sizeimage %d\n", sizeimage ); for( i = 0 ; i < sizeimage ; i++ ) { - vx = *ptrUCharX; - vy = *ptrUCharY; - vz = *ptrUCharZ; - ptrUCharX++; - ptrUCharY++; - ptrUCharZ++; - array->SetTuple3(i,vx, vy , vz ); + vx = *ptrX; + vy = *ptrY; + vz = *ptrZ; + ptrX++; + ptrY++; + ptrZ++; + array->SetTuple3(i,vx, vy , vz ); } // for i _structuredPoints = vtkStructuredPoints::New(); _structuredPoints->SetDimensions(dim[0], dim[1], dim[2]); _structuredPoints->SetSpacing(spc); + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 _structuredPoints->SetScalarTypeToDouble(); _structuredPoints->SetNumberOfScalarComponents(3); +#else + vtkInformation* info=_structuredPoints->GetInformation(); + vtkDataObject::SetPointDataActiveScalarInfo(info, VTK_DOUBLE, 3); + +#endif + _structuredPoints->GetPointData()->SetVectors(array); _structuredPoints->GetPointData()->SetNumberOfTuples(sizeimage); _structuredPoints->Modified(); +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 _structuredPoints->Update(); +#else + //... +#endif /* _structuredPoints->Print(cout); - vtkStructuredPointsWriter *writer2 = vtkStructuredPointsWriter::New(); writer2->SetFileName("/home/davila/tmp/VectorfromCal_EED_ups.vtk"); //writer->SetFileTypeToBinary();