SignMathUtils Class Reference

#include <SignMathUtils.h>

List of all members.


Detailed Description

Mathematical functions.

This class contains a couple of mathematical functions that are used throughout The SIGN.

Author:
Eigil Samset and Arne Hans


Static Public Member Functions

static vtkMatrix4x4 * RegisterFiducialSets (SignFiducialCollection *set1, SignFiducialCollection *set2)
 Performs SVD-based registration for two fiducial sets.
static float abs (float)
 Computes the absolute value of a number.
static float dist (int a[2], int b[2])
 Computes the distance between two points in 2 dimensions.
static float dist (float a[3], float b[3])
 Computes the distance between two points in 3 dimensions.
static void Normalize (float *v)
 Normalizes a vector.
static void MultiplyMatrix (const double **A, const double **B, unsigned int rowA, unsigned int colA, unsigned int rowB, unsigned int colB, double **C)
static double ** AllocateMatrix (int r, int c)
static int ComputeRasToIjkFromCorners (double *ftl, double *ftr, double *fbr, double *ltl, double zoffset, vtkImageData *image, vtkMatrix4x4 *posMat)
 Computes the RAS to IJK matrix based on the corners of the image. The strategy here is as follows. We create a 4x4 matrix called Ras, which has in its columns the homogeneous RAS coordinates of four corners of the data volume. We then create another matrix called Ijk, which has in its columns the IJK coordinates of those same four corners. We then solve for RasToIjk in the equation RasToIjk*Ras=Ijk.
static void ComputeRasToIjkFromScanOrder (const char *order, vtkImageData *image, vtkMatrix4x4 *posMat)
 Computes the RAS to IJK matrix based on the scan order.


Member Function Documentation

float SignMathUtils::abs float   )  [static]
 

Computes the absolute value of a number.

double ** SignMathUtils::AllocateMatrix int  r,
int  c
[static]
 

int SignMathUtils::ComputeRasToIjkFromCorners double *  ftl,
double *  ftr,
double *  fbr,
double *  ltl,
double  zoffset,
vtkImageData *  image,
vtkMatrix4x4 *  posMat
[static]
 

Computes the RAS to IJK matrix based on the corners of the image. The strategy here is as follows. We create a 4x4 matrix called Ras, which has in its columns the homogeneous RAS coordinates of four corners of the data volume. We then create another matrix called Ijk, which has in its columns the IJK coordinates of those same four corners. We then solve for RasToIjk in the equation RasToIjk*Ras=Ijk.

void SignMathUtils::ComputeRasToIjkFromScanOrder const char *  order,
vtkImageData *  image,
vtkMatrix4x4 *  posMat
[static]
 

Computes the RAS to IJK matrix based on the scan order.

float SignMathUtils::dist float  a[3],
float  b[3]
[static]
 

Computes the distance between two points in 3 dimensions.

float SignMathUtils::dist int  a[2],
int  b[2]
[static]
 

Computes the distance between two points in 2 dimensions.

void SignMathUtils::MultiplyMatrix const double **  A,
const double **  B,
unsigned int  rowA,
unsigned int  colA,
unsigned int  rowB,
unsigned int  colB,
double **  C
[static]
 

void SignMathUtils::Normalize float *  v  )  [static]
 

Normalizes a vector.

vtkMatrix4x4 * SignMathUtils::RegisterFiducialSets SignFiducialCollection set1,
SignFiducialCollection set2
[static]
 

Performs SVD-based registration for two fiducial sets.

Parameters:
set1 fiducial set 1
set2 fiducial set 2


The documentation for this class was generated from the following files:
Generated on Mon Feb 26 12:13:11 2007 for TheSIGN by  doxygen 1.4.6