diff --git a/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.cpp b/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.cpp index a36375c..8e48786 100644 --- a/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.cpp +++ b/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.cpp @@ -3,6 +3,7 @@ #include #include +namespace Recon { float* b3dMex(float *startPoint, float *endPoint,size_t &outputSize ) { /* Input arguments from MATLAB */ @@ -109,6 +110,14 @@ float* b3dMex(float *startPoint, float *endPoint,size_t &outputSize ) { return output; } +Aurora::Matrix b3dMexDouble(const Aurora::Matrix& StartPt, const Aurora::Matrix& endPts) +{ + size_t size = 0; + auto temp = + Recon::b3dMexDouble(StartPt.getData(), endPts.getData(), size); + return Aurora::Matrix::fromRawData(temp, 3, size / 3); +} + double * b3dMexDouble(double *startPoint,double *endPoint, size_t& outputSize) { std::vector points; @@ -206,3 +215,5 @@ double * b3dMexDouble(double *startPoint,double *endPoint, size_t& outputSize) { outputSize = points.size(); return output; } +} + diff --git a/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.h b/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.h index bd5fd2d..2afc898 100644 --- a/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.h +++ b/src/transmissionReconstruction/reconstruction/buildMatrix/Bresenham.h @@ -1,8 +1,10 @@ #ifndef __B3DMEX_H__ #define __B3DMEX_H__ #include +#include "Matrix.h" namespace Recon { float* b3dMex(float *startPoint, float *endPoint,std::size_t &outputSize ); double * b3dMexDouble(double *startPoint,double *endPoint, size_t& outputSize); + Aurora::Matrix b3dMexDouble(const Aurora::Matrix& StartPt, const Aurora::Matrix& endPts); } #endif // __B3DMEX_H__ \ No newline at end of file