ctkVTKHistogramTest1.cpp 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  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 ctkVTKHistogramTest1( int argc, char * argv [])
  12. {
  13. Q_UNUSED(argc);
  14. Q_UNUSED(argv);
  15. //---------------------------------------------------
  16. // test 1 : With default Histogram
  17. //---------------------------------------------------
  18. ctkVTKHistogram defaultHistogram;
  19. //------Test constructor---------------------------
  20. if (defaultHistogram.count() != 0
  21. || defaultHistogram.minValue() != 0
  22. || defaultHistogram.maxValue() != 0
  23. || defaultHistogram.component() != 0)
  24. {
  25. std::cerr << "Line : " << __LINE__
  26. << " - Problem with ctkVTKHistogram::ctkVTKHistogram "
  27. << defaultHistogram.count()
  28. << std::endl;
  29. return EXIT_FAILURE;
  30. }
  31. //-----Test setComponent---------------------------
  32. int newComponent = 1;
  33. defaultHistogram.setComponent(newComponent);
  34. if (defaultHistogram.component() != newComponent)
  35. {
  36. std::cerr << "Line : " << __LINE__
  37. << " - Problem with ctkVTKHistogram::setComponent "
  38. << defaultHistogram.component()
  39. << std::endl;
  40. return EXIT_FAILURE;
  41. }
  42. // All the following data array have only 1 component.
  43. defaultHistogram.setComponent(0);
  44. //------Test build--------------------------------
  45. defaultHistogram.build();
  46. //-----Test Range----------------------------------
  47. qreal minRange = 1;
  48. qreal maxRange = 2;
  49. defaultHistogram.range(minRange,maxRange);
  50. //------Test dataArray-----------------------------
  51. vtkSmartPointer<vtkDataArray> defaultDataArray;
  52. defaultDataArray = defaultHistogram.dataArray();
  53. //------Test setDataArray--------------------------
  54. int dataType = VTK_CHAR;
  55. vtkSmartPointer<vtkDataArray> newDataArray = vtkDataArray::CreateDataArray(dataType);
  56. defaultHistogram.setDataArray(newDataArray);
  57. if (defaultHistogram.dataArray() != newDataArray)
  58. {
  59. std::cerr << "Line : " << __LINE__
  60. << " - Problem with ctkVTKHistogram::setDataArray "
  61. << std::endl;
  62. return EXIT_FAILURE;
  63. }
  64. //------Test build---------------------------------
  65. defaultHistogram.build();
  66. dataType = VTK_INT;
  67. newDataArray = vtkDataArray::CreateDataArray(dataType);
  68. newDataArray->SetNumberOfComponents(1);
  69. newDataArray->InsertNextTuple1(50);
  70. newDataArray->InsertNextTuple1(143);
  71. newDataArray->InsertNextTuple1(210);
  72. newDataArray->InsertNextTuple1(210);
  73. defaultHistogram.setDataArray(newDataArray);
  74. if (defaultHistogram.dataArray() != newDataArray)
  75. {
  76. std::cerr << "Line : " << __LINE__
  77. << " - Problem with ctkVTKHistogram::setDataArray "
  78. << std::endl;
  79. return EXIT_FAILURE;
  80. }
  81. //------Test build---------------------------------
  82. defaultHistogram.build();
  83. dataType = VTK_FLOAT;
  84. newDataArray = vtkDataArray::CreateDataArray(dataType);
  85. defaultHistogram.setDataArray(newDataArray);
  86. if (defaultHistogram.dataArray() != newDataArray)
  87. {
  88. std::cerr << "Line : " << __LINE__
  89. << " - Problem with ctkVTKHistogram::setDataArray "
  90. << std::endl;
  91. return EXIT_FAILURE;
  92. }
  93. //------Test setNumberOfBins-----------------------
  94. defaultHistogram.setNumberOfBins(5);
  95. //-----Test Range----------------------------------
  96. defaultHistogram.range(minRange,maxRange);
  97. //------Test build---------------------------------
  98. defaultHistogram.build();
  99. //------Test value---------------------------------
  100. qreal defaultPos = 0.;
  101. defaultHistogram.value(defaultPos);
  102. //------Test ControlPoint--------------------------
  103. defaultHistogram.controlPoint(0);
  104. //------Test removeControlPoint--------------------
  105. /// Function NOT implemented
  106. defaultHistogram.removeControlPoint(0);
  107. return EXIT_SUCCESS;
  108. }