/*========================================================================= Program: gdcm Module: $RCSfile: gdcmOrientation.h,v $ Language: C++ Date: $Date: 2005/07/29 20:50:07 $ Version: $Revision: 1.4 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html 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. =========================================================================*/ #ifndef GDCMORIENTATION_H #define GDCMORIENTATION_H #include "gdcmBase.h" #include namespace gdcm { typedef struct { double x; double y; double z; } vector3D; typedef std::pair Res; class File; //----------------------------------------------------------------------------- /** * \brief Orientation class for dealing with DICOM image orientation */ class GDCM_EXPORT Orientation : public Base { public: Orientation() {}; ~Orientation() {}; double TypeOrientation( File* file ); private: Res VerfCriterion(int typeCriterion, double criterionNew, Res const & res); double CalculLikelyhood2Vec(vector3D const & refA, vector3D const & refB, vector3D const & ori1, vector3D const & ori2); vector3D ProductVectorial(vector3D const & vec1, vector3D const & vec2); }; } // end namespace gdcm //----------------------------------------------------------------------------- #endif