ctkVTKHistogramTest2.cpp 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. // Qt includes
  2. #include <QCoreApplication>
  3. // CTKVTK includes
  4. #include "ctkVTKHistogram.h"
  5. // VTK includes
  6. #include <vtkSmartPointer.h>
  7. #include <vtkDataArray.h>
  8. // STD includes
  9. #include <cstdlib>
  10. #include <iostream>
  11. int ctkVTKHistogramTest2( int argc, char * argv [])
  12. {
  13. Q_UNUSED(argc);
  14. Q_UNUSED(argv);
  15. //---------------------------------------------------
  16. // test 2 :
  17. //---------------------------------------------------
  18. //------Test build--------------------------------
  19. ctkVTKHistogram rgbHistogram;
  20. vtkSmartPointer<vtkDataArray> rgbDataArray = vtkDataArray::CreateDataArray(VTK_INT);
  21. rgbDataArray->SetNumberOfComponents(3);
  22. rgbDataArray->InsertNextTuple3( 0, 50, 0);
  23. rgbDataArray->InsertNextTuple3(1000, 143, -1412);
  24. rgbDataArray->InsertNextTuple3(-543, 210, 151);
  25. rgbDataArray->InsertNextTuple3( -1, 210, 10);
  26. rgbHistogram.setDataArray(rgbDataArray);
  27. if (rgbHistogram.dataArray() != rgbDataArray)
  28. {
  29. std::cerr << "Line : " << __LINE__
  30. << " - Problem with ctkVTKHistogram::setDataArray "
  31. << std::endl;
  32. return EXIT_FAILURE;
  33. }
  34. // Generate histogram on the Green values
  35. rgbHistogram.setComponent(1);
  36. //------Test build---------------------------------
  37. rgbHistogram.build();
  38. if (rgbHistogram.count() != (210 - 50 + 1))
  39. {
  40. std::cerr << "Failed to build histogram" << rgbHistogram.count()
  41. << std::endl;
  42. return EXIT_FAILURE;
  43. }
  44. if (rgbHistogram.value(210).toInt() != 2)
  45. {
  46. std::cerr << "Failed to build histogram" << rgbHistogram.value(210).toInt()
  47. << std::endl;
  48. return EXIT_FAILURE;
  49. }
  50. return EXIT_SUCCESS;
  51. }