Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
ON_Matrix Class Reference

#include <opennurbs_matrix.h>

List of all members.

Public Member Functions

bool Add (const ON_Matrix &A, const ON_Matrix &B)
bool BackSolve (double, int, const double *, double *) const
bool BackSolve (double, int, const ON_3dPoint *, ON_3dPoint *) const
bool BackSolve (double, int, int, int, const double *, int, double *) const
int ColCount () const
void ColOp (int, double, int)
void ColScale (int, double)
bool Create (int, int)
bool Create (int, int, int, int)
bool Create (int row_count, int col_count, double **M, bool bDestructorFreeM)
void Destroy ()
void EmergencyDestroy ()
bool Invert (double)
bool IsColOrthoganal () const
bool IsColOrthoNormal () const
bool IsRowOrthoganal () const
bool IsRowOrthoNormal () const
int IsSquare () const
bool IsValid () const
int MaxCount () const
int MinCount () const
bool Multiply (const ON_Matrix &A, const ON_Matrix &B)
 ON_Matrix ()
 ON_Matrix (int row_count, int col_count)
 ON_Matrix (int, int, int, int)
 ON_Matrix (const ON_Xform &)
 ON_Matrix (const ON_Matrix &)
 ON_Matrix (int row_count, int col_count, double **M, bool bDestructorFreeM)
ON_Matrixoperator= (const ON_Matrix &)
ON_Matrixoperator= (const ON_Xform &)
double * operator[] (int)
const double * operator[] (int) const
int RowCount () const
void RowOp (int, double, int)
int RowReduce (double, double &, double &)
int RowReduce (double, double *, double *=NULL)
int RowReduce (double, ON_3dPoint *, double *=NULL)
int RowReduce (double, int, int, double *, double *=NULL)
void RowScale (int, double)
bool Scale (double s)
void SetDiagonal (double)
void SetDiagonal (const double *)
void SetDiagonal (int, const double *)
void SetDiagonal (const ON_SimpleArray< double > &)
bool SwapCols (int, int)
bool SwapRows (int, int)
bool Transpose ()
void Zero ()
virtual ~ON_Matrix ()

Public Attributes

double ** m

Private Member Functions

double const *const * ThisM () const
double ** ThisM ()

Private Attributes

void * m_cmem
int m_col_count
int m_col_offset
double ** m_Mmem
int m_row_count
int m_row_offset
ON_SimpleArray< double * > m_rowmem

Detailed Description

Definition at line 22 of file opennurbs_matrix.h.


Constructor & Destructor Documentation

Definition at line 60 of file opennurbs_matrix.cpp.

ON_Matrix::ON_Matrix ( int  row_count,
int  col_count 
)

Definition at line 71 of file opennurbs_matrix.cpp.

ON_Matrix::ON_Matrix ( int  row0,
int  row1,
int  col0,
int  col1 
)

Definition at line 83 of file opennurbs_matrix.cpp.

Definition at line 95 of file opennurbs_matrix.cpp.

ON_Matrix::ON_Matrix ( const ON_Matrix src)

Definition at line 107 of file opennurbs_matrix.cpp.

ON_Matrix::ON_Matrix ( int  row_count,
int  col_count,
double **  M,
bool  bDestructorFreeM 
)

Definition at line 119 of file opennurbs_matrix.cpp.

ON_Matrix::~ON_Matrix ( ) [virtual]

Definition at line 136 of file opennurbs_matrix.cpp.


Member Function Documentation

bool ON_Matrix::Add ( const ON_Matrix A,
const ON_Matrix B 
)

Definition at line 1145 of file opennurbs_matrix.cpp.

bool ON_Matrix::BackSolve ( double  zero_tolerance,
int  Bsize,
const double *  B,
double *  X 
) const

Definition at line 754 of file opennurbs_matrix.cpp.

bool ON_Matrix::BackSolve ( double  zero_tolerance,
int  Bsize,
const ON_3dPoint B,
ON_3dPoint X 
) const

Definition at line 787 of file opennurbs_matrix.cpp.

bool ON_Matrix::BackSolve ( double  zero_tolerance,
int  pt_dim,
int  Bsize,
int  Bpt_stride,
const double *  Bpt,
int  Xpt_stride,
double *  Xpt 
) const

Definition at line 832 of file opennurbs_matrix.cpp.

int ON_Matrix::ColCount ( ) const

Definition at line 160 of file opennurbs_matrix.cpp.

void ON_Matrix::ColOp ( int  dest_col,
double  s,
int  src_col 
)

Definition at line 486 of file opennurbs_matrix.cpp.

void ON_Matrix::ColScale ( int  dest_col,
double  s 
)

Definition at line 475 of file opennurbs_matrix.cpp.

bool ON_Matrix::Create ( int  row_count,
int  col_count 
)

Definition at line 175 of file opennurbs_matrix.cpp.

bool ON_Matrix::Create ( int  ri0,
int  ri1,
int  ci0,
int  ci1 
)

Definition at line 236 of file opennurbs_matrix.cpp.

bool ON_Matrix::Create ( int  row_count,
int  col_count,
double **  M,
bool  bDestructorFreeM 
)

Definition at line 269 of file opennurbs_matrix.cpp.

Definition at line 288 of file opennurbs_matrix.cpp.

void ON_Matrix::EmergencyDestroy ( void  )

Definition at line 313 of file opennurbs_matrix.cpp.

bool ON_Matrix::Invert ( double  zero_tolerance)

Definition at line 1044 of file opennurbs_matrix.cpp.

Definition at line 1006 of file opennurbs_matrix.cpp.

Definition at line 1025 of file opennurbs_matrix.cpp.

Definition at line 968 of file opennurbs_matrix.cpp.

Definition at line 987 of file opennurbs_matrix.cpp.

int ON_Matrix::IsSquare ( ) const

Definition at line 963 of file opennurbs_matrix.cpp.

bool ON_Matrix::IsValid ( ) const

Definition at line 954 of file opennurbs_matrix.cpp.

int ON_Matrix::MaxCount ( ) const

Definition at line 170 of file opennurbs_matrix.cpp.

int ON_Matrix::MinCount ( ) const

Definition at line 165 of file opennurbs_matrix.cpp.

bool ON_Matrix::Multiply ( const ON_Matrix A,
const ON_Matrix B 
)

Definition at line 1114 of file opennurbs_matrix.cpp.

ON_Matrix & ON_Matrix::operator= ( const ON_Matrix src)

Definition at line 326 of file opennurbs_matrix.cpp.

ON_Matrix & ON_Matrix::operator= ( const ON_Xform src)

Definition at line 353 of file opennurbs_matrix.cpp.

double * ON_Matrix::operator[] ( int  i)

Definition at line 50 of file opennurbs_matrix.cpp.

const double * ON_Matrix::operator[] ( int  i) const

Definition at line 55 of file opennurbs_matrix.cpp.

int ON_Matrix::RowCount ( ) const

Definition at line 155 of file opennurbs_matrix.cpp.

void ON_Matrix::RowOp ( int  dest_row,
double  s,
int  src_row 
)

Definition at line 467 of file opennurbs_matrix.cpp.

int ON_Matrix::RowReduce ( double  zero_tolerance,
double &  determinant,
double &  pivot 
)

Definition at line 499 of file opennurbs_matrix.cpp.

int ON_Matrix::RowReduce ( double  zero_tolerance,
double *  B,
double *  pivot = NULL 
)

Definition at line 557 of file opennurbs_matrix.cpp.

int ON_Matrix::RowReduce ( double  zero_tolerance,
ON_3dPoint B,
double *  pivot = NULL 
)

Definition at line 615 of file opennurbs_matrix.cpp.

int ON_Matrix::RowReduce ( double  zero_tolerance,
int  pt_dim,
int  pt_stride,
double *  pt,
double *  pivot = NULL 
)

Definition at line 675 of file opennurbs_matrix.cpp.

void ON_Matrix::RowScale ( int  dest_row,
double  s 
)

Definition at line 460 of file opennurbs_matrix.cpp.

bool ON_Matrix::Scale ( double  s)

Definition at line 1166 of file opennurbs_matrix.cpp.

void ON_Matrix::SetDiagonal ( double  d)

Definition at line 915 of file opennurbs_matrix.cpp.

void ON_Matrix::SetDiagonal ( const double *  d)

Definition at line 927 of file opennurbs_matrix.cpp.

void ON_Matrix::SetDiagonal ( int  count,
const double *  d 
)

Definition at line 942 of file opennurbs_matrix.cpp.

void ON_Matrix::SetDiagonal ( const ON_SimpleArray< double > &  a)

Definition at line 949 of file opennurbs_matrix.cpp.

bool ON_Matrix::SwapCols ( int  col0,
int  col1 
)

Definition at line 438 of file opennurbs_matrix.cpp.

bool ON_Matrix::SwapRows ( int  row0,
int  row1 
)

Definition at line 421 of file opennurbs_matrix.cpp.

double const *const * ON_Matrix::ThisM ( ) const [private]

Definition at line 31 of file opennurbs_matrix.cpp.

double ** ON_Matrix::ThisM ( ) [private]

Definition at line 40 of file opennurbs_matrix.cpp.

Definition at line 376 of file opennurbs_matrix.cpp.

void ON_Matrix::Zero ( )

Definition at line 900 of file opennurbs_matrix.cpp.


Member Data Documentation

double** ON_Matrix::m

Definition at line 378 of file opennurbs_matrix.h.

void* ON_Matrix::m_cmem [private]

Definition at line 389 of file opennurbs_matrix.h.

int ON_Matrix::m_col_count [private]

Definition at line 383 of file opennurbs_matrix.h.

int ON_Matrix::m_col_offset [private]

Definition at line 388 of file opennurbs_matrix.h.

double** ON_Matrix::m_Mmem [private]

Definition at line 386 of file opennurbs_matrix.h.

int ON_Matrix::m_row_count [private]

Definition at line 382 of file opennurbs_matrix.h.

int ON_Matrix::m_row_offset [private]

Definition at line 387 of file opennurbs_matrix.h.

ON_SimpleArray<double*> ON_Matrix::m_rowmem [private]

Definition at line 385 of file opennurbs_matrix.h.


The documentation for this class was generated from the following files:


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:38:52