]> Creatis software - clitk.git/blobdiff - tools/clitkHistogramImageGenericFilter.cxx
Debug RTStruct conversion with empty struc
[clitk.git] / tools / clitkHistogramImageGenericFilter.cxx
index 49e3fa0b687d0bbc454d1a4adab06bac0f08ea4e..f93f213138cd74a3533bd3a5addca55242d8e79a 100644 (file)
@@ -130,7 +130,10 @@ HistogramImageGenericFilter::UpdateWithInputImageType()
   //compute bin number
   typedef typename HistogramFilterType::HistogramSizeType SizeType;
   SizeType binNumber(1);
-  mBinSize = std::log(range);
+  if (!mArgsInfo.size_given)
+    mBinSize = std::log(range);
+  if (mBinSize == 0)
+    mBinSize = 1;
   binNumber[0] = (int)(range/mBinSize);
   if (binNumber[0] == 0)
     binNumber[0] = 1;
@@ -159,6 +162,31 @@ HistogramImageGenericFilter::UpdateWithInputImageType()
 }
 //--------------------------------------------------------------------
 
+//------------------------------------------------------------------------------
+void HistogramImageGenericFilter::SaveAs()
+{
+  // Output
+  std::string textFileName = GetOutputFilename();
+  ofstream fileOpen(textFileName.c_str(), std::ofstream::trunc);
+
+  if(!fileOpen) {
+      cerr << "Error during saving" << endl;
+      return;
+  }
+
+  int i(0);
+  fileOpen << "Value represents the number of voxels around the corresponding intensity (by default the windows size around intensity is log(range))" << endl;
+  fileOpen << "Intensity" << "\t" << "Value" << endl;
+
+  while (i<mArrayX->GetNumberOfTuples()) {
+      fileOpen << mArrayX->GetTuple(i)[0] << "\t" << mArrayY->GetTuple(i)[0] << endl;
+      ++i;
+  }
+
+  fileOpen.close();
+}
+//------------------------------------------------------------------------------
+
 
 }//end clitk