1 #ifndef __JFIT__JPOINT3DESTIMATOR__ 
    2 #define __JFIT__JPOINT3DESTIMATOR__ 
   15 namespace JPP { 
using namespace JFIT; }
 
   78       const int N = 
distance(__begin, __end);
 
   80       if (N + 1 >= NUMBER_OF_PARAMETERS) {
 
   88         for (T i = __begin; i != __end; ++i) {
 
   90           const double xx = 1.0  -  i->getDX() * i->getDX();
 
   91           const double yy = 1.0  -  i->getDY() * i->getDY();
 
   92           const double zz = 1.0  -  i->getDZ() * i->getDZ();
 
   94           const double xy = -i->getDX() * i->getDY();
 
   95           const double xz = -i->getDX() * i->getDZ();
 
   96           const double yz = -i->getDY() * i->getDZ();
 
  107           x  +=  xx * i->getX()  + xy * i->getY()  +  xz * i->getZ();
 
  108           y  +=  xy * i->getX()  + yy * i->getY()  +  yz * i->getZ();
 
  109           z  +=  xz * i->getX()  + yz * i->getY()  +  zz * i->getZ();
 
  118         __x = V.a00 * x  +  V.a01 * y  +  V.a02 * z;
 
  119         __y = V.a10 * x  +  V.a11 * y  +  V.a12 * z;
 
  120         __z = V.a20 * x  +  V.a21 * y  +  V.a22 * z;
 
  123         throw JValueOutOfRange(
"JEstimator<JPoint3D>::JEstimator(): Not enough data points.");
 
  128     static const int NUMBER_OF_PARAMETERS  =  3;