#include "utils.h" #include "scenetree.h" std::vector utils::split(const std::string &line, char sep){ std::vector tokens; std::size_t start=0, end=0; while((end = line.find(sep,start)) != std::string::npos){ tokens.push_back(line.substr(start,end-start)); start=end+1; } tokens.push_back(line.substr(start)); return tokens; } void utils::setPosition2D(MeshNode *mnode, glm::vec2 pos){ glm::mat4 tr = mnode->getTransform(); glm::vec3 vpos(pos.x,pos.y,0); tr = glm::translate(tr,vpos - glm::vec3(tr[3])); mnode->setTransform(tr); } void utils::resize2D(MeshNode *mnode, glm::vec2 dim, glm::vec2 new_dim){ glm::mat4 tr = mnode->getTransform(); glm::vec3 pos(tr[3]); glm::vec2 ratio = new_dim / dim; tr = glm::scale(tr, glm::vec3(1,ratio.y,1)); glm::vec3 new_pos(tr[3]); tr = glm::translate(tr,pos-new_pos); mnode->setTransform(tr); }