add RawVector

This commit is contained in:
2024-03-05 21:14:08 +01:00
parent 0f72f6603e
commit 911f016bb7
2 changed files with 18 additions and 0 deletions

View File

@@ -122,6 +122,16 @@ class Matrix {
* construit une matrice de 4 lignes et 1 colonne de coordonnées (1, 2, 3, 4) * construit une matrice de 4 lignes et 1 colonne de coordonnées (1, 2, 3, 4)
*/ */
static Matrix ColumnVector(std::initializer_list<Element>&&); static Matrix ColumnVector(std::initializer_list<Element>&&);
/**
* \brief Construit une matrice ligne à partir de données existantes.\n
* Exemple :
* \code
* Matrix::RawVector({1, 2, 3, 4});
* \endcode
* construit une matrice de 1 ligne et 4 colonnes de coordonnées (1, 2, 3, 4)
*/
static Matrix RawVector(std::initializer_list<Element>&&);
}; };
template <typename T> template <typename T>

View File

@@ -65,6 +65,14 @@ Matrix Matrix::ColumnVector(std::initializer_list<Element>&& initList) {
return result; return result;
} }
Matrix Matrix::RawVector(std::initializer_list<Element>&& initList) {
Matrix result {1, initList.size()};
result.m_Data = initList;
return result;
}
void Matrix::Augment(const Matrix& droite) { void Matrix::Augment(const Matrix& droite) {
assert(droite.m_Raws == m_Raws); assert(droite.m_Raws == m_Raws);
Matrix temp {m_Raws, m_Columns + droite.m_Columns}; Matrix temp {m_Raws, m_Columns + droite.m_Columns};