#include <QApplication>
#include <QTimer>
#include "vtkSmartPointer.h"
#include "vtkPNGReader.h"
#include "vtkImageGaussianSmooth.h"
#include "vtkImageGradient.h"
#include "vtkMetaImageReader.h"
#include "itkImage.h"
#include "itkSmartPointer.h"
#include "itkImageFileReader.h"
#include <QStringList>
#include <QString>
int main(
int argc,
char **argv)
{
if ( argc != 4 )
{
std::cout << "Usage : QGoSynchronizedViewManagerTest(.exe) " << std::endl;
std::cout << "1-file.png" << std::endl;
std::cout << "2-file.mhd" << std::endl;
std::cout << "3-test (boolean)" << std::endl;
return EXIT_FAILURE;
}
typedef double InputPixelType;
const unsigned int Dimension = 3;
typedef itk::Image< InputPixelType, Dimension > InputImage3DType;
typedef InputImage3DType::Pointer InputImage3DPointer;
typedef itk::ImageFileReader< InputImage3DType > itkReaderType;
itkReaderType::Pointer itkReader = itkReaderType::New();
itkReader->SetFileName(argv[2]);
itkReader->Update();
vtkSmartPointer< vtkPNGReader > reader = vtkSmartPointer< vtkPNGReader >::New();
reader->SetFileName(argv[1]);
reader->Update();
vtkSmartPointer< vtkImageGaussianSmooth > filter1 =
vtkSmartPointer< vtkImageGaussianSmooth >::New();
filter1->SetInputConnection( reader->GetOutputPort() );
filter1->Update();
vtkSmartPointer< vtkImageGradient > filter2 =
vtkSmartPointer< vtkImageGradient >::New();
filter2->SetInputConnection( reader->GetOutputPort() );
filter2->Update();
vtkSmartPointer< vtkMetaImageReader > reader3D = vtkSmartPointer< vtkMetaImageReader >::New();
reader3D->SetFileName(argv[2]);
reader3D->Update();
vtkSmartPointer< vtkImageGaussianSmooth > filter13D =
vtkSmartPointer< vtkImageGaussianSmooth >::New();
filter13D->SetInputConnection( reader3D->GetOutputPort() );
filter13D->Update();
vtkSmartPointer< vtkImageGradient > filter23D =
vtkSmartPointer< vtkImageGradient >::New();
filter23D->SetInputConnection( reader3D->GetOutputPort() );
filter23D->Update();
QObject::connect( timer, SIGNAL( timeout() ), qApp, SLOT( closeAllWindows() ) );
if ( atoi(argv[3]) == 1 )
{
}
delete timer;
delete syncViewManage;
return output;
}