21 if((m.Nrows() == 4) &&
26 else if((m.Nrows()==3)&&
95 double v10,
double v11,
double v12,
double v13,
96 double v20,
double v21,
double v22,
double v23,
97 double v30,
double v31,
double v32,
double v33)
120 #define QX q.theVector[0] 121 #define QY q.theVector[1] 122 #define QZ q.theVector[2] 123 #define QW q.theVector[3] 134 if (length2!=1.0 && length2!=0)
144 double wx, wy, wz, xx, yy, yz, xy, xz, zz, x2, y2, z2;
163 theData[0][0] = 1.0 - (yy + zz);
168 theData[1][1] = 1.0 - (xx + zz);
173 theData[2][2] = 1.0 - (xx + yy);
191 int nxt[3] = {1, 2, 0};
236 NEWMAT::DiagonalMatrix d;
237 NEWMAT::SymmetricMatrix s;
342 NEWMAT::Matrix m(4,4);
349 m << 1.0 << 0.0 << 0.0 << 0.0
350 << 0.0 << Cosine << Sine << 0.0
351 << 0.0 << -Sine << Cosine << 0.0
352 << 0.0 << 0.0 << 0.0 << 1.0;
356 m << 1.0 << 0.0 << 0.0 << 0.0
357 << 0.0 << Cosine << -Sine << 0.0
358 << 0.0 << Sine << Cosine << 0.0
359 << 0.0 << 0.0 << 0.0 << 1.0;
368 NEWMAT::Matrix m(4,4);
375 m << Cosine << 0.0 << -Sine << 0.0
376 << 0.0 << 1.0 << 0.0 << 0.0
377 << Sine << 0.0 << Cosine << 0.0
378 << 0.0 << 0.0 << 0.0 << 1.0;
382 m << Cosine << 0.0 << Sine << 0.0
383 << 0.0 << 1.0 << 0.0 << 0.0
384 << -Sine << 0.0 << Cosine << 0.0
385 << 0.0 << 0.0 << 0.0 << 1.0;
395 NEWMAT::Matrix m(4,4);
402 m << Cosine << Sine << 0.0 << 0.0
403 << -Sine << Cosine << 0.0 << 0.0
404 << 0.0 << 0.0 << 1.0 << 0.0
405 << 0.0 << 0.0 << 0.0 << 1.0;
409 m << Cosine << -Sine << 0.0 << 0.0
410 << Sine << Cosine << 0.0 << 0.0
411 << 0.0 << 0.0 << 1.0 << 0.0
412 << 0.0 << 0.0 << 0.0 << 1.0;
421 NEWMAT::Matrix m(4, 4);
423 m <<
x << 0.0 << 0.0 << 0.0
424 << 0.0 <<
y << 0.0 << 0.0
425 << 0.0 << 0.0 << z << 0.0
426 << 0.0 << 0.0 << 0.0 << 1.0;
ossimColumnVector3d getEigenValues() const
void EigenValues(const SymmetricMatrix &, DiagonalMatrix &)
ossim::Quaternion getRotate() const
const NEWMAT::Matrix & getData() const
static NEWMAT::Matrix createRotationYMatrix(double angle, ossimCoordSysOrientMode orientationMode=OSSIM_RIGHT_HANDED)
static NEWMAT::Matrix createTranslationMatrix(double x, double y, double z)
static NEWMAT::Matrix createZero()
void makeRotate(const ossim::Quaternion &quat)
value_type length2() const
Length of the quaternion = vec . vec.
void setRotate(const ossim::Quaternion &quat)
static NEWMAT::Matrix createRotationXMatrix(double angle, ossimCoordSysOrientMode orientationMode=OSSIM_RIGHT_HANDED)
static NEWMAT::Matrix createRotationZMatrix(double angle, ossimCoordSysOrientMode orientationMode=OSSIM_RIGHT_HANDED)
static NEWMAT::Matrix createScaleMatrix(double X, double Y, double Z)
static NEWMAT::Matrix createRotateOnly(const ossimMatrix4x4 &aMatrix)
static NEWMAT::Matrix createIdentity()
static NEWMAT::Matrix createRotationMatrix(double angleX, double angleY, double angleZ, ossimCoordSysOrientMode orientationMode=OSSIM_RIGHT_HANDED)