#include "remove_row.h" void remove_row( const int rowToRemove, Eigen::MatrixXd & matrix) { unsigned int numRows = matrix.rows()-1; unsigned int numCols = matrix.cols(); if( rowToRemove < numRows ) matrix.block(rowToRemove,0,numRows-rowToRemove,numCols) = matrix.block(rowToRemove+1,0,numRows-rowToRemove,numCols); matrix.conservativeResize(numRows,numCols); } void remove_row( const int rowToRemove, Eigen::MatrixXi & matrix) { unsigned int numRows = matrix.rows()-1; unsigned int numCols = matrix.cols(); if( rowToRemove < numRows ) matrix.block(rowToRemove,0,numRows-rowToRemove,numCols) = matrix.block(rowToRemove+1,0,numRows-rowToRemove,numCols); matrix.conservativeResize(numRows,numCols); }