+/**
+ * Copy the image and reverse the Y axis
+ */
+// The output datas must be deleted by the user of the method !!!
+size_t ReverseData(vtkImageData *img,unsigned char **data)
+{
+ int *dim = img->GetDimensions();
+ size_t lineSize = dim[0] * img->GetScalarSize()
+ * img->GetNumberOfScalarComponents();
+ size_t planeSize = dim[1] * lineSize;
+ size_t size = dim[2] * planeSize;
+
+ *data = new unsigned char[size];
+
+ unsigned char *src = (unsigned char *)img->GetScalarPointer();
+ unsigned char *dst = *data + planeSize - lineSize;
+ for (int plane = 0; plane < dim[2]; plane++)
+ {
+ for (int line = 0; line < dim[1]; line++)
+ {
+ // Copy one line at proper destination:
+ memcpy((void*)dst, (void*)src, lineSize);
+
+ src += lineSize;
+ dst -= lineSize;
+ }
+ dst += 2 * planeSize;
+ }
+
+ return size;
+}
+
+/**
+ * Set the datas informations in the file
+ */