1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
/*=========================================================================
Program: Insight Segmentation & Registration Toolkit
Module: $RCSfile: itkMultivariateLegendrePolynomialTest.cxx,v $
Language: C++
Date: $Date: 2005-02-08 04:20:01 $
Version: $Revision: 1.9 $
Copyright (c) Insight Software Consortium. All rights reserved.
See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
#if defined(_MSC_VER)
#pragma warning ( disable : 4786 )
#endif
#include <iostream>
#include "itkMultivariateLegendrePolynomial.h"
/**
* This test exercise the functionality of the
*
* itk::MultivariateLegendrePolynomial class
*
*/
int itkMultivariateLegendrePolynomialTest(int , char* [] )
{
typedef itk::MultivariateLegendrePolynomial PolynomialType;
const unsigned int dimension = 3;
const unsigned int degree = 3;
PolynomialType::DomainSizeType domainSize(dimension);
domainSize[0] = 2 ;
domainSize[1] = 2 ;
domainSize[2] = 2 ;
PolynomialType polynomial( dimension, degree, domainSize );
if ( polynomial.GetDimension() != dimension )
{
std::cout << "Test fails: GetDimension()" << std::endl ;
return EXIT_FAILURE ;
}
if ( polynomial.GetDegree() != degree )
{
std::cout << "Test fails: GetDegree()" << std::endl ;
return EXIT_FAILURE ;
}
if ( polynomial.GetDomainSize() != domainSize )
{
std::cout << "Test fails: GetDomainSize()" << std::endl ;
return EXIT_FAILURE ;
}
if ( polynomial.GetNumberOfCoefficients() != 20 )
{
std::cout << "Test fails: GetNumberOfCoefficients()" << std::endl ;
return EXIT_FAILURE ;
}
PolynomialType::CoefficientArrayType coefficients(20) ;
std::fill(coefficients.begin(), coefficients.end(), 0.1) ;
try
{
polynomial.SetCoefficients( coefficients ) ;
}
catch ( ... )
{
}
PolynomialType::SimpleForwardIterator bIter( &polynomial ) ;
bIter.Begin() ;
while (!bIter.IsAtEnd())
{
bIter.Get() ;
++bIter ;
}
std::cout << "Test succeeded." << std::endl;
return EXIT_SUCCESS ;
}
|