Functions

vtkMitkThickSlicesFilterTest.cpp File Reference

#include <vtkImageData.h>
#include "mitkTestingMacros.h"
#include "vtkMitkThickSlicesFilter.h"

Go to the source code of this file.

Functions

vtkImageData * GenerateTestImageForTSFilter ()
void CheckResultImageForTSFilter (vtkImageData *i)
int vtkMitkThickSlicesFilterTest (int, char *[])

Function Documentation

void CheckResultImageForTSFilter ( vtkImageData *  i )

Definition at line 56 of file vtkMitkThickSlicesFilterTest.cpp.

References MITK_TEST_CONDITION_REQUIRED.

Referenced by vtkMitkThickSlicesFilterTest().

{
  int *e=i->GetExtent();
  
  MITK_TEST_CONDITION_REQUIRED( e[0] == 0 && e[1] == 1 && e[2] == 0 && e[3] == 1 && e[4] == 0 && e[5] == 0 , "output image has correct extent" )
  MITK_TEST_CONDITION_REQUIRED( i->GetScalarType() == VTK_SHORT , "output image has correct scalar type" )
  
  short expectedResult[] = 
  {
   
    234,800,
    1000,565
  };

  short *d = (short*)i->GetScalarPointer();

  MITK_TEST_CONDITION_REQUIRED( memcmp(d,expectedResult,sizeof(expectedResult)) == 0 , "output image has correct content" )
}
vtkImageData* GenerateTestImageForTSFilter (  )

3x3x3 test image

Definition at line 28 of file vtkMitkThickSlicesFilterTest.cpp.

Referenced by vtkMitkThickSlicesFilterTest().

{
  // a 2x2x2 image
  short myData[] = 
  {
   
    234,234,
    123,565,
   
    -213,800,
    1000,-20
  };
  
  vtkImageData *i = vtkImageData::New();
  
  i->SetExtent(0,1,0,1,0,1);
  
  i->SetScalarTypeToShort();

  i->AllocateScalars();
  
  short *p = (short*)i->GetScalarPointer();
  
  memcpy(p,myData,2*2*2*sizeof(short));
  
  return i;
}
int vtkMitkThickSlicesFilterTest ( int  ,
char *  [] 
)

todo

Definition at line 79 of file vtkMitkThickSlicesFilterTest.cpp.

References CheckResultImageForTSFilter(), GenerateTestImageForTSFilter(), MITK_TEST_BEGIN, MITK_TEST_END, vtkMitkThickSlicesFilter::New(), and vtkMitkThickSlicesFilter::SetThickSliceMode().

{
  MITK_TEST_BEGIN("ThickSlicesFilter")

  vtkImageData *i,*o;
  
  i = GenerateTestImageForTSFilter();

  vtkMitkThickSlicesFilter *f = vtkMitkThickSlicesFilter::New();
  f->SetThickSliceMode( 0 ); // MIP
  f->SetInput( i );
  f->Update();
  o = f->GetOutput();
  
  CheckResultImageForTSFilter(o);

  //Delete vtk variable correctly
  i->Delete();
  f->Delete();
  
  MITK_TEST_END()
}
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines