From f5ac96d9bac214ad2da17b9a9c643853956b08ca Mon Sep 17 00:00:00 2001 From: sunwen Date: Mon, 5 Jun 2023 14:23:06 +0800 Subject: [PATCH] Fix MatlabWriter write 3d data. --- src/MatlabWriter.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/MatlabWriter.cpp b/src/MatlabWriter.cpp index acdc6a4..8985a4a 100644 --- a/src/MatlabWriter.cpp +++ b/src/MatlabWriter.cpp @@ -14,8 +14,9 @@ MatlabWriter::~MatlabWriter() void MatlabWriter::write(const Aurora::Matrix& aMatrixs, const std::string& aName) { - size_t dims[2] ={(size_t)aMatrixs.getDimSize(0),(size_t)aMatrixs.getDimSize(1)}; - matvar_t* var = Mat_VarCreate(aName.c_str(),MAT_C_DOUBLE,MAT_T_DOUBLE,2,dims,aMatrixs.getData(),0); + int dimsSize = aMatrixs.getDims(); + size_t dims[3] ={(size_t)aMatrixs.getDimSize(0),(size_t)aMatrixs.getDimSize(1), (size_t)aMatrixs.getDimSize(2)}; + matvar_t* var = Mat_VarCreate(aName.c_str(),MAT_C_DOUBLE,MAT_T_DOUBLE,dimsSize,dims,aMatrixs.getData(),0); Mat_VarWrite(mMat,var,MAT_COMPRESSION_NONE); Mat_VarFree(var); }