.. _program_listing_file_Utilities_PLYLoader.h: Program Listing for File PLYLoader.h ==================================== |exhale_lsh| :ref:`Return to documentation for file ` (``Utilities/PLYLoader.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef __PLYLoader_h__ #define __PLYLoader_h__ #include #include "Logger.h" #include "extern/happly/happly.h" #include namespace Utilities { class PLYLoader { public: static void loadPly(const std::string &filename, std::vector> &x, std::vector> &faces, const std::array&scale) { LOG_INFO << "Loading " << filename; happly::PLYData plyIn(filename.c_str()); std::vector> vPos = plyIn.getVertexPositions(); std::vector> fInd = plyIn.getFaceIndices(); x.resize(vPos.size()); for (unsigned int i = 0; i < vPos.size(); i++) { x[i] = { scale[0] * static_cast(vPos[i][0]), scale[1] * static_cast(vPos[i][1]), scale[2] * static_cast(vPos[i][2]) }; } faces.resize(fInd.size()); for (unsigned int i = 0; i < fInd.size(); i++) faces[i] = { static_cast(fInd[i][0]), static_cast(fInd[i][1]), static_cast(fInd[i][2]) }; } }; } #endif