bool ProjectData::removeMesh(const std::string& name) { bool mesh_found = false; std::vector<MeshLib::Mesh*>::iterator it = findMeshByName(name); while (it != _mesh_vec.end()) { delete *it; *it = nullptr; it = findMeshByName(name); mesh_found = true; } _mesh_vec.erase(std::remove(_mesh_vec.begin(), _mesh_vec.end(), nullptr), _mesh_vec.end()); return mesh_found; }
bool Project::removeMesh(const std::string &name) { auto it = findMeshByName(name); if (it != _mesh_vec.end()) { delete it->release(); _mesh_vec.erase(it); return true; } return false; }
bool ProjectData::meshExists(const std::string& name) const { return findMeshByName(name) != _mesh_vec.end(); }
const MeshLib::Mesh* ProjectData::getMesh(const std::string& name) const { std::vector<MeshLib::Mesh*>::const_iterator it = findMeshByName(name); return (it == _mesh_vec.end() ? nullptr : *it); }
const MeshLib::Mesh* Project::getMesh(const std::string &name) const { auto it = findMeshByName(name); return (it == _mesh_vec.end() ? nullptr : it->get()); }