X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkOrientation.cxx;h=535bc28d3797222b30bf2046b4a4876bef415729;hb=d55f025b18f68066a52b8f33c2dc6481e82c2580;hp=8f011883dbf0aebee26ca523181b6fc6c3d7c82c;hpb=0083c3fb2c66812489631c7551709d121de51625;p=clitk.git diff --git a/common/clitkOrientation.cxx b/common/clitkOrientation.cxx index 8f01188..535bc28 100644 --- a/common/clitkOrientation.cxx +++ b/common/clitkOrientation.cxx @@ -1,3 +1,20 @@ +/*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv + + Authors belong to: + - University of LYON http://www.universite-lyon.fr/ + - Léon Bérard cancer center http://www.centreleonberard.fr + - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the copyright notices for more information. + + It is distributed under dual licence + + - BSD See included LICENSE.txt file + - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +===========================================================================**/ #ifndef CLITKORIENTATION_CXX #define CLITKORIENTATION_CXX /** @@ -5,10 +22,10 @@ * @file clitkOrientation.cxx * @author David Sarrut * @date 01 Nov 2006 18:02:49 - * - * @brief - * - * + * + * @brief + * + * =================================================*/ #include "clitkOrientation.h" @@ -22,34 +39,34 @@ itk::SpatialOrientation::CoordinateTerms clitk::GetOrientation(char c) if ((c == 'A') || (c == 'a')) return itk::SpatialOrientation::ITK_COORDINATE_Anterior; if ((c == 'I') || (c == 'i')) return itk::SpatialOrientation::ITK_COORDINATE_Inferior; if ((c == 'S') || (c == 's')) return itk::SpatialOrientation::ITK_COORDINATE_Superior; - std::cerr <<"I don't know the orientation '" << c - << "'. Valid letters are LR/AP/IS (or in lowercase)" << std::endl; + std::cerr <<"I don't know the orientation '" << c + << "'. Valid letters are LR/AP/IS (or in lowercase)" << std::endl; exit(0); } //==================================================================== //==================================================================== bool clitk::CheckOrientation(itk::SpatialOrientation::CoordinateTerms a, - itk::SpatialOrientation::CoordinateTerms b) + itk::SpatialOrientation::CoordinateTerms b) { - if ((a==itk::SpatialOrientation::ITK_COORDINATE_Right) || + if ((a==itk::SpatialOrientation::ITK_COORDINATE_Right) || (a==itk::SpatialOrientation::ITK_COORDINATE_Left)) { if ((b==itk::SpatialOrientation::ITK_COORDINATE_Right) || - (b==itk::SpatialOrientation::ITK_COORDINATE_Left)) { + (b==itk::SpatialOrientation::ITK_COORDINATE_Left)) { return false; } } - if ((a==itk::SpatialOrientation::ITK_COORDINATE_Posterior) || + if ((a==itk::SpatialOrientation::ITK_COORDINATE_Posterior) || (a==itk::SpatialOrientation::ITK_COORDINATE_Anterior)) { if ((b==itk::SpatialOrientation::ITK_COORDINATE_Posterior) || - (b==itk::SpatialOrientation::ITK_COORDINATE_Anterior)) { + (b==itk::SpatialOrientation::ITK_COORDINATE_Anterior)) { return false; } } - if ((a==itk::SpatialOrientation::ITK_COORDINATE_Inferior) || + if ((a==itk::SpatialOrientation::ITK_COORDINATE_Inferior) || (a==itk::SpatialOrientation::ITK_COORDINATE_Superior)) { if ((b==itk::SpatialOrientation::ITK_COORDINATE_Inferior) || - (b==itk::SpatialOrientation::ITK_COORDINATE_Superior)) { + (b==itk::SpatialOrientation::ITK_COORDINATE_Superior)) { return false; } } @@ -66,12 +83,12 @@ itk::SpatialOrientation::ValidCoordinateOrientationFlags clitk::GetOrientation(c if (CheckOrientation(f1, f2) && CheckOrientation(f2,f3) && CheckOrientation(f1,f3)) { return static_cast( - (f1 << itk::SpatialOrientation::ITK_COORDINATE_PrimaryMinor) - + (f2 << itk::SpatialOrientation::ITK_COORDINATE_SecondaryMinor) - + (f3 << itk::SpatialOrientation::ITK_COORDINATE_TertiaryMinor)); + (f1 << itk::SpatialOrientation::ITK_COORDINATE_PrimaryMinor) + + (f2 << itk::SpatialOrientation::ITK_COORDINATE_SecondaryMinor) + + (f3 << itk::SpatialOrientation::ITK_COORDINATE_TertiaryMinor)); } - std::cerr <<"I don't know the orientation '" << a << b << c - << "'. Valid letters are LR/AP/IS (or in lowercase)" << std::endl; + std::cerr <<"I don't know the orientation '" << a << b << c + << "'. Valid letters are LR/AP/IS (or in lowercase)" << std::endl; exit(0); } //==================================================================== @@ -80,8 +97,8 @@ itk::SpatialOrientation::ValidCoordinateOrientationFlags clitk::GetOrientation(c itk::SpatialOrientation::ValidCoordinateOrientationFlags clitk::GetOrientation(const std::string & orient) { if (orient.size() >= 3) return GetOrientation(orient[0], orient[1], orient[2]); - std::cerr <<"I don't know the orientation '" << orient - << "'. Valid string are three letters LR/AP/IS (or in lowercase)" << std::endl; + std::cerr <<"I don't know the orientation '" << orient + << "'. Valid string are three letters LR/AP/IS (or in lowercase)" << std::endl; exit(0); } //==================================================================== @@ -98,28 +115,29 @@ itk::SpatialOrientation::CoordinateTerms clitk::GetOrientation(const int i, cons //==================================================================== //==================================================================== -int clitk::WhereIsDimInThisOrientation(const int dim, const itk::SpatialOrientation::ValidCoordinateOrientationFlags flag) { +int clitk::WhereIsDimInThisOrientation(const int dim, const itk::SpatialOrientation::ValidCoordinateOrientationFlags flag) +{ if (dim ==0) { for(int i=0; i<3; i++) { int j = GetOrientation(i, flag); - if ((j == itk::SpatialOrientation::ITK_COORDINATE_Right) || - (j == itk::SpatialOrientation::ITK_COORDINATE_Left)) return i; + if ((j == itk::SpatialOrientation::ITK_COORDINATE_Right) || + (j == itk::SpatialOrientation::ITK_COORDINATE_Left)) return i; } - } + } if (dim ==1) { for(int i=0; i<3; i++) { int j = GetOrientation(i, flag); - if ((j == itk::SpatialOrientation::ITK_COORDINATE_Anterior) || - (j == itk::SpatialOrientation::ITK_COORDINATE_Posterior)) return i; + if ((j == itk::SpatialOrientation::ITK_COORDINATE_Anterior) || + (j == itk::SpatialOrientation::ITK_COORDINATE_Posterior)) return i; } - } + } if (dim ==2) { for(int i=0; i<3; i++) { int j = GetOrientation(i, flag); - if ((j == itk::SpatialOrientation::ITK_COORDINATE_Superior) || - (j == itk::SpatialOrientation::ITK_COORDINATE_Inferior)) return i; + if ((j == itk::SpatialOrientation::ITK_COORDINATE_Superior) || + (j == itk::SpatialOrientation::ITK_COORDINATE_Inferior)) return i; } - } + } return 0; // just to avoid warning } //==================================================================== @@ -127,11 +145,11 @@ int clitk::WhereIsDimInThisOrientation(const int dim, const itk::SpatialOrientat //==================================================================== int clitk::GetDim(const itk::SpatialOrientation::CoordinateTerms t) { - if ((t == itk::SpatialOrientation::ITK_COORDINATE_Right) || + if ((t == itk::SpatialOrientation::ITK_COORDINATE_Right) || (t == itk::SpatialOrientation::ITK_COORDINATE_Left)) return 0; if ((t == itk::SpatialOrientation::ITK_COORDINATE_Anterior) || (t == itk::SpatialOrientation::ITK_COORDINATE_Posterior)) return 1; - if ((t == itk::SpatialOrientation::ITK_COORDINATE_Inferior) || + if ((t == itk::SpatialOrientation::ITK_COORDINATE_Inferior) || (t == itk::SpatialOrientation::ITK_COORDINATE_Superior)) return 2; std::cerr <<"Invalid CoordinateTerms = " << t << std::endl; exit(0); @@ -139,11 +157,11 @@ int clitk::GetDim(const itk::SpatialOrientation::CoordinateTerms t) //==================================================================== //==================================================================== -void clitk::FlipPoint(const itk::Point in, - const itk::SpatialOrientation::ValidCoordinateOrientationFlags inFlag, - const itk::SpatialOrientation::ValidCoordinateOrientationFlags outFlag, - const itk::Point & imageSize, - itk::Point & out) +void clitk::FlipPoint(const itk::Point in, + const itk::SpatialOrientation::ValidCoordinateOrientationFlags inFlag, + const itk::SpatialOrientation::ValidCoordinateOrientationFlags outFlag, + const itk::Point & imageSize, + itk::Point & out) { for(int i=0; i<3; i++) { // DD(i);