Program: gdcm
Module: $RCSfile: gdcmFile.cxx,v $
Language: C++
- Date: $Date: 2005/07/23 02:01:37 $
- Version: $Revision: 1.260 $
+ Date: $Date: 2005/07/24 00:24:46 $
+ Version: $Revision: 1.261 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
}
+// FIXME. Seriously who wrote that !
+// Haven't you ever heard of so called reference in c++
Res File::VerfCriterion(int typeCriterion, float criterionNew, Res res)
{
float criterion = res.second;
return res;
}
-float File::CalculLikelyhood2Vec(vector3D refA, vector3D refB,
- vector3D ori1, vector3D ori2)
+inline double square_dist(vector3D const &v1, vector3D const & v2)
+{
+ double res;
+ res = (v1.x - v2.x)*(v1.x - v2.x) +
+ (v1.y - v2.y)*(v1.y - v2.y) +
+ (v1.z - v2.z)*(v1.z - v2.z);
+ return res;
+}
+
+float File::CalculLikelyhood2Vec(vector3D const & refA, vector3D const &refB,
+ vector3D const & ori1, vector3D const &ori2)
{
// # ------------------------- Purpose : -----------------------------------
// # - This function determines the orientation similarity of two planes.
vector3D ori3 = ProductVectorial(ori1,ori2);
vector3D refC = ProductVectorial(refA,refB);
- float res = pow(refC.x-ori3.x, 2.) +
- pow(refC.y-ori3.y, 2.) +
- pow(refC.z-ori3.z, 2.);
+ double res = square_dist(refC, ori3);
/*
// ori3=self.ProductVectorial(ori1,ori2)
return sqrt(res);
}
-vector3D File::ProductVectorial(vector3D vec1, vector3D vec2)
+vector3D File::ProductVectorial(vector3D const & vec1, vector3D const & vec2)
{
// # ------------------------- Purpose : -----------------------------------
Program: gdcm
Module: $RCSfile: gdcmFile.h,v $
Language: C++
- Date: $Date: 2005/07/21 14:01:50 $
- Version: $Revision: 1.112 $
+ Date: $Date: 2005/07/24 00:24:46 $
+ Version: $Revision: 1.113 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
void ReadAndSkipEncapsulatedBasicOffsetTable();
Res VerfCriterion(int typeCriterion, float criterionNew, Res res);
- float CalculLikelyhood2Vec(vector3D refA, vector3D refB,
- vector3D ori1, vector3D ori2);
- vector3D ProductVectorial(vector3D vec1, vector3D vec2);
+ float CalculLikelyhood2Vec(vector3D const & refA, vector3D const & refB,
+ vector3D const & ori1, vector3D const & ori2);
+ vector3D ProductVectorial(vector3D const & vec1, vector3D const & vec2);
};
} // end namespace gdcm