Warning, /include/opencascade/math_Matrix.lxx is written in an unsupported language. File is not indexed.
0001 // Copyright (c) 1997-1999 Matra Datavision
0002 // Copyright (c) 1999-2014 OPEN CASCADE SAS
0003 //
0004 // This file is part of Open CASCADE Technology software library.
0005 //
0006 // This library is free software; you can redistribute it and/or modify it under
0007 // the terms of the GNU Lesser General Public License version 2.1 as published
0008 // by the Free Software Foundation, with special exception defined in the file
0009 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0010 // distribution for complete text of the license and disclaimer of any warranty.
0011 //
0012 // Alternatively, this file may be used under the terms of Open CASCADE
0013 // commercial license or contractual agreement.
0014
0015 // lpa le 29/10/91
0016
0017 #include <Standard_DimensionError.hxx>
0018
0019 inline Standard_OStream& operator<<(Standard_OStream& o,
0020 const math_Matrix& mat)
0021 {
0022 mat.Dump(o);
0023 return o;
0024 }
0025
0026 inline math_Matrix operator* (const Standard_Real Left,
0027 const math_Matrix& Right)
0028 {
0029 return Right.Multiplied(Left);
0030 }
0031
0032
0033
0034 inline Standard_Real& math_Matrix::Value(const Standard_Integer Row,
0035 const Standard_Integer Col)const
0036 {
0037 Standard_RangeError_Raise_if(((Row < LowerRowIndex) ||
0038 (Row > UpperRowIndex) ||
0039 (Col < LowerColIndex) ||
0040 (Col > UpperColIndex)), " ");
0041
0042 return Array(Row, Col);
0043 }
0044
0045 inline Standard_Integer math_Matrix::RowNumber() const
0046 { return UpperRowIndex - LowerRowIndex + 1; }
0047
0048 // returns the row range of a matrix.
0049
0050 inline Standard_Integer math_Matrix::ColNumber() const
0051 { return UpperColIndex - LowerColIndex + 1; }
0052
0053 // returns the column range of a matrix.
0054
0055
0056
0057
0058 inline Standard_Integer math_Matrix::LowerRow() const { return LowerRowIndex; }
0059
0060 // returns the value of the Lower index of the row range of a matrix.
0061
0062 inline Standard_Integer math_Matrix::UpperRow () const { return UpperRowIndex; }
0063
0064 // returns the value of the Upper index of the row range of a matrix.
0065
0066 inline Standard_Integer math_Matrix::LowerCol() const { return LowerColIndex; }
0067
0068 // returns the value of the Lower index of the column range of a matrix.
0069
0070 inline Standard_Integer math_Matrix::UpperCol() const { return UpperColIndex; }
0071
0072 // returns the value of the Upper index of the column range of a matrix.
0073
0074 inline void math_Matrix::SetLower (const Standard_Integer LowerRow,
0075 const Standard_Integer LowerCol)
0076 {
0077 SetLowerRow(LowerRow);
0078 SetLowerCol(LowerCol);
0079 }