Dandelion 1.1.1
A light-weight 3D builder for educational usage
|
表示物体组的类。 更多...
#include <group.h>
Public 成员函数 | |
Group (const std::string &group_name) | |
bool | load (const std::string &file_path) |
Group (Group &other)=delete | |
Group (const Group &other)=delete | |
Public 属性 | |
std::vector< std::unique_ptr< Object > > | objects |
std::size_t | id |
std::string | name |
Private 属性 | |
std::shared_ptr< spdlog::logger > | logger |
静态 Private 属性 | |
static std::size_t | next_available_id = 0 |
表示物体组的类。
一个模型文件(例如一个 obj 文件)中可以包含多个物体, 因此加载一个模型文件的结果是一个组而不是一个物体。加载完成后,组名即文件名、 各物体名即文件中各 mesh 的名称。在删除组中所有的物体后该组为空但不会被删除, 未来将实现组间转移物体和向组中添加物体的功能。
Group::Group | ( | const std::string & | group_name | ) |
创建一个组只需要指定组名,加载模型数据要显式调用 load
方法。
|
delete |
禁止复制组。
bool Group::load | ( | const std::string & | file_path | ) |
被 Scene::load
调用,真正加载模型数据的函数。
std::size_t Group::id |
组的唯一 ID 。
std::string Group::name |
组名,来自加载时的文件名。
|
staticprivate |
下一个可用的组 ID 。
std::vector<std::unique_ptr<Object> > Group::objects |
组中所有的物体。