ctkDICOMImageTest1.cpp 916 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // Qt includes
  2. #include <QApplication>
  3. #include <QLabel>
  4. // ctkDICOMCore includes
  5. #include "ctkDICOMImage.h"
  6. // DCMTK includes
  7. #include <dcmimage.h>
  8. // STD includes
  9. #include <iostream>
  10. int ctkDICOMImageTest1( int argc, char * argv [] )
  11. {
  12. QApplication app(argc, argv);
  13. if (argc <= 1)
  14. {
  15. std::cerr << "Warning, no dicom file given. Test stops" << std::endl;
  16. std::cerr << "Usage: qctkDICOMImageTest1 <dicom file>" << std::endl;
  17. return EXIT_FAILURE;
  18. }
  19. DicomImage dcmtkImage(argv[1]);
  20. ctkDICOMImage ctkImage(&dcmtkImage);
  21. QLabel qtImage;
  22. QPixmap pixmap = QPixmap::fromImage(ctkImage.getImage(0),Qt::AvoidDither);
  23. if (pixmap.isNull())
  24. {
  25. std::cerr << "Failed to convert QImage to QPixmap" ;
  26. return EXIT_FAILURE;
  27. }
  28. qtImage.setPixmap(pixmap);
  29. qtImage.show();
  30. if (argc > 2 && QString(argv[2]) == "-I")
  31. {
  32. return app.exec();
  33. }
  34. return EXIT_SUCCESS;
  35. }